【发布时间】:2019-03-29 19:17:10
【问题描述】:
我正在寻找一个数据集 (df_freeGammas) 并总结该数据集的某些组成部分。数据集分为受试者和不同的测试编号(受试者 1,测试 1)。有些科目有超过 1 项测试。每个测试都有对应于测试和主题的 16 行数据的子集。我希望能够使用循环或嵌套循环将主题编号放在结果矩阵中。我想出了一种方法来做到这一点,但我不断收到错误: “如果 (df_freeGammas[n, 2] != df_freeGammas[n + 1, 2]) { 中的错误: 需要 TRUE/FALSE 的缺失值” 请帮忙。
我尝试添加更多 if 循环和 while 循环。
for (n in 1:nrow(df_freeGammas)){
+ if (df_freeGammas[n,2] != df_freeGammas[n+1,2]){
+ Results[n/16,1] = df_freeGammas[n,1]}
+ else if (df_freeGammas[n,1] != df_freeGammas[n+1,1]){
+ Results[n/16,1] = df_freeGammas[n,1]}
+ else
+ invisible()
我期待结果,但没有错误消息。
【问题讨论】:
-
你能在 if 语句之前打印出 "df_freeGammas[n,2] != df_freeGammas[n+1,2]" 的值吗?我的猜测是它正在评估为非布尔值。
-
“df_freeGammas[n,2] != df_freeGammas[n+1,2]”的打印值为 NA。您有什么建议可以将类似的语句设为布尔值吗?我尝试切换到 添加另一个 if 循环,但这不起作用。
-
请看下面的答案。
标签: loops if-statement nested-loops