错误:缺少需要TRUE / FALSE的值 - 数据中没有NA

时间:2016-11-07 18:13:37

标签: r

我在运行代码时不断收到此错误:

check_transactions <- function(flags, trans_col, industry_column, industry_df){
  for(i in seq(1:length(flags$individual_id))){
    if(flags$industry_column[i]>0 && nrow(subset(industry_df, industry_df$individual_id == flags$individual_id[i]))!=0){
      flags$trans_col[i] <- subset(industry_df, industry_df$individual_id == ind_id)['txn_num']
    }
  }
}

check_transactions(flags1, txn_num_ind01, ind01_flag, ind1)

Error in if (flags$industry_column[i] > 0 && nrow(subset(industry_df,  : 
  missing value where TRUE/FALSE needed

在搜索其他帖子后,普遍的共识是数据中存在NA,这与逻辑混淆。我的数据不是这种情况,我没有遗漏的值。

当我测试指定&#39; i&#39;的条件时,我得到TRUE或FALSE,所以我不确定为什么我的循环不起作用。

我错过了什么吗?这是我的两个数据框的片段:
flags1:

  individual_id ind01_flag ind05_flag ind06_flag ind07_flag txn_num_ind01 txn_num_ind05 txn_num_ind06 txn_num_ind07
1      10000230          2          2          2          2             0             0             0             0
2      10002230          2          1          1          2             0             0             0             0
3      10002380          2          2          2          2             0             0             0             0
4      10003040          1          2          1          2             0             0             0             0
5      10003260          1          2          0          1             0             0             0             0
6      10007230          2          1          0          1             0             0             0             0

和ind1

  individual_id txn_num
1      10000075      42
2      10000178     110
3      10000230     134
4      10000407      49
5      10000447     131
6      10000677     114

0 个答案:

没有答案