【发布时间】:2018-08-07 12:08:12
【问题描述】:
我正在遍历一个大型数据集并隔离了一些返回错误的组:
if (is.na(x)) return(0) else return(sign(x)) 中的错误: 参数长度为零
其他帖子表明这表明存在 NULL。不过,
is.null(block_of_troublesome_data) [1] 错误
手动检查 df 也不显示任何 na 值(这是有道理的,因为我之前在整个块上运行了 na.omit()。
我错过了什么?
附加信息:这是循环正在处理的 df:
数据
小标题:120 x 11
组:ecoregion_code [1]
ecoregion_code loc_major_basin lake_id lake_name sample_date y m doy value_ft season_code season 1 40 7010103 01-0022-00 岛 1999-07-29 1999 7 210 5.610236 2 夏季 2 40 7010103 01-0022-00 ISLAND 2000-06-18 2000 6 170 6.496063 1 弹簧 3 40 7010103 01-0022-00 岛 2000-07-04 2000 7 186 6.496063 2 夏季 4 40 7010103 01-0022-00 岛 2000-08-12 2000 8 225 6.496063 2 夏季 5 40 7010103 01-0022-00 岛 2000-08-26 2000 8 239 6.496063 2 夏季 6 40 7010103 01-0022-00 岛 2000-09-16 2000 9 260 6.496063 3 秋季 7 40 7010103 01-0022-00 ISLAND 2001-06-03 2001 6 154 5.511811 1 弹簧 8 40 7010103 01-0022-00 ISLAND 2001-06-10 2001 6 161 5.511811 1 弹簧 9 40 7010103 01-0022-00 ISLAND 2001-06-17 2001 6 168 4.986877 1 弹簧 10 40 7010103 01-0022-00 ISLAND 2001-10-18 2001 10 291 6.496063 3 秋季
...还有 110 行
和'if (is.na(x)) return(0) else return(sign(x))'的输出
if (is.na(data)) return(0) else return(sign(data)) Math.data.frame(data) 中的错误: 数据框中的非数字变量:lake_idlake_namesample_dateseason 另外:警告信息: 在 if (is.na(data)) return(0) else return(sign(data)) 中: 条件的长度 > 1,并且只使用第一个元素
和
if (length(data)==0) 0 else if is.na(x) 0 else sign(data) 错误:“if (length(data)==0) 0 else if is.na”中出现意外符号
【问题讨论】:
-
您可以发布示例数据吗?请使用
dput(x)的输出编辑问题。或者,如果dput(head(x, 20))的输出太大。