【发布时间】:2014-12-02 03:46:06
【问题描述】:
我有一个清单。然后我开始一个 for 循环,在那个 for 循环中,我首先将变量名称转换为字符串,然后将列表竞争分配给字符串,以便我获得具有正确内容的正确名称。 循环完成后,我确实想将 item#1 与列表中的 #4、item#2 和 #5 等结合起来。 但是当组合这些项目时,我得到以下信息:
Error in [.data.frame(LoopVariable, , "F_corrected_normed_error") :
undefined columns selected
稍后当我想用InorganicNoStdCondition进行计算时
这是我的代码示例:
ResidualList = list(IAEA_C2_NoStdCondition = IAEA_C2_NoStdCondition,
IAEA_C2_EAstd = IAEA_C2_EAstd,
IAEA_C2_STstd = IAEA_C2_STstd,
IAEA_C2_Bothstd = IAEA_C2_Bothstd,
TIRI_I_NoStdCondition = TIRI_I_NoStdCondition,
TIRI_I_EAstd = TIRI_I_EAstd,
TIRI_I_STstd = TIRI_I_STstd,
TIRI_I_Bothstd = TIRI_I_Bothstd
)
C = 8
for(j in 1:C) {
#convert list Variable to string for later usage in filename as unique identifier!!
SubNameString = names(ResidualList)[j]
SubNameString = paste0(SubNameString, "Residuals")
#print(SubNameString)
SubNameString = ResidualList[[j]]
SubNameString[ ,"F_corrected_normed"] = round(SubNameString[ ,"F_corrected_normed"] / mean(SubNameString[ ,"F_corrected_normed"]),
digit = 5
)
SubNameString[ ,"F_corrected_normed_error"] = round(SubNameString[ ,"F_corrected_normed_error"] / mean(SubNameString[ ,"F_corrected_normed_error"]),
digit = 5
)
#View(SubNameString[ ,"F_corrected_normed"])
#print(SubNameString)
}
View(SubNameString)
InorganicNoStdCondition = data.frame(cbind(IAEA_C2_NoStdConditionResiduals,
TIRI_I_NoStdConditionResiduals
)
)
【问题讨论】:
-
请给出一个可重现的例子
-
@Johannes 最好使用
dput显示一些数据,即。 dput(ResidualList)` 如果输出不是那么大。另外,如果可能的话,还有预期的结果。