我有一个数据框如下:
HR_CI algorithm value L1 pvalue
1 1 (1-1) xfh 0.79 ROI_Maximum p-value.xfh
2 1 (1-1) xflab 0.79 ROI_Maximum p-value.xflab
3 1 (1-1) x40p 0.70 ROI_Maximum p-value.x40p
4 1 (1-1) xfh 0.44 ROI_Standard_Deviation p-value.xfh
5 1 (1-1) xflab 0.48 ROI_Standard_Deviation p-value.xflab
6 1 (1-1) x40p 0.45 ROI_Standard_Deviation p-value.x40p
我希望它以 L1 形成 ID 列、算法和 pvalue 的方式进行转换(pvalue 下的 3 个变量和 3 个算法)。摆动 pvalue 放在 3 个新列下的值来自“值”列,摆动算法放在 3 个新列下的值应该来自 HR_CI 列。
我试过以下
survtab <- dcast(tmp,L1~algorithm+pvalue,value.var=c("HR_CI","value"))
但它给了我一个错误
Error in .subset2(x, i, exact = exact) : subscript out of bounds
In addition: Warning message:
In if (!(value.var %in% names(data))) { :
the condition has length > 1 and only the first element will be used
任何建议将被认真考虑