如何解决为什么我的 R 数据帧没有在 ifelse 语句中被复制?
我有一个包含 875000 行的数据框 tas_i,如下所示:
head(tas_i)
x tas year month_no
1 1 NA 1884 1
2 2 NA 1884 1
3 3 NA 1884 1
4 4 NA 1884 1
5 5 NA 1884 1
6 6 NA 1884 1
我有一个相对简单的 ifelse 语句,但它不起作用(见下文)。我究竟做错了什么?我的对象 tas 最终成为数字的“列表”而不是“数据框”。
> i
[1] 1
> j
[1] 1884
> tas <- ifelse(i==1 & j==1884,tas_i,rbind(tas,tas_i))
> nrow(tas_i)
[1] 875000
> nrow(tas)
NULL
> tas_i[1:6,]
x tas year month_no
1 1 NA 1884 1
2 2 NA 1884 1
3 3 NA 1884 1
4 4 NA 1884 1
5 5 NA 1884 1
6 6 NA 1884 1
> tas[1:6,]
Error in tas[1:6,] : incorrect number of dimensions
class(tas)
[1] "list"
> class(tas_i)
[1] "data.frame"
请注意,如果我执行 tas ,它可以正常工作并且 tas 是一个数据框
tas <- tas_i
class(tas)
[1] "data.frame"
强调文字
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。