问题描述
我是 PLSR 的新手并且正在自学。
我目前拥有一种生物标志物的 6 个浓度的光谱数据,在 1015 个频率下测量。这对于每个浓度水平重复四次。我通过取每个频率的重复强度的平均值来汇总每个浓度的数据。
所以我的数据有
- 结果中有 6 个观察结果,
- 一个有 6 行(对应于结果中的值)和 1015 列的预测矩阵。
从这个 thread 中获取假数据模拟代码,一个模拟示例是:
obs_no <- 6
col_no <- 1015
datasetpH <- data.frame(pH=rnorm(obs_no,5,1),ref=I( matrix(data=rnorm(obs_no*col_no),nrow = obs_no,ncol = col_no) )
)
pls::plsr(pH ~ ref,ncomp = 10,data=datasetpH,method="kernelpls")
这给了我以下错误:
Error in pls::mvr(pH ~ ref,data = datasetpH,method = "kernelpls") :
Invalid number of components,ncomp
如果我在模拟示例中更改为 ncomp=5,模型就会运行。
- 为什么在上面的模拟示例中 ncomp 被限制为 5?
- 对于重复,是否应该对每个浓度和频率值的数据进行平均?或者,我是否可以保留数据中的重复数据,并在结果中包含 6*4 = 24 个浓度观察值(具有重复值)以及具有 24 行和 1015 列的相应预测矩阵?
我非常感谢有关上述内容的任何建议/指导 - 谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)