我有一些函数数据作为fda对象,现在我得到了一阶导数,并且想要得到每条曲线的最大值的坐标,这怎么可能呢?
为了更好地理解,我提供了一些取自here的虚构数据:
library(fdaoutlier);
library(fda);
set.seed(95139);
n_obs <- 50;
n_curves <- 100
mod4 <- simulation_model4(n = n_curves, p = n_obs, outlier_rate = .5, seed = 50, plot = FALSE)
index1 <- mod4$true_outliers;
curves_mat <- mod4$data;
n_order = 4;
knots = c(seq(0,n_obs,5))
n_basis = length(knots) + n_order - 2;
spline_basis = create.bspline.basis(rangeval = c(0,n_obs), nbasis = n_basis, norder = n_order)
df1 <- curves_mat[index1,]
df1_obj <- Data2fd(argvals = 1:n_obs, y = t(df1), basisobj = spline_basis, lambda = 0.5)
那么,怎样才能得到df1_obj
每条曲线的最大值的坐标呢?
1条答案
按热度按时间bfnvny8b1#
某种变通方案,也许有人可以添加更好的解决方案:
eval.fd()
给出曲线的离散表示,因此可以得到它们的最大值。