繁体   English   中英

如何在R中编辑数据框(多列)?

[英]How do I edit my data frame (multiply columns) in R?

我有一个包含11列的CSV文件(但是我暂时忽略的前8列),最后3列(9-11)很重要。 我缺少第9列的一些数据,这些单元格显示为NA。 但是要填充这些单元格,我可以将第11列乘以10列。

我想创建一个数据框,其中所有第9列均被填充,并将其另存为新的CSV文件。 我首先尝试增加列数。 这行之有效,我从第9列中获取了丢失的数据。然后,我尝试将新的第9列与数据框中的第9列合并,但R只是将2列连接在一起。

我想要计算出的NA数据来替换原始数据帧中的数据(因此我得到了完整的第9列)。 另外,我只想用NA单元乘以列,这样就不会替换原始数据。 怎么做?

col_9 <- matrix(dat[,10] * dat[,11], ncol=1)
print(col_9)

您可以使用ifelse函数:

dat[,9]=ifelse(is.na(dat[,9]), dat[,10]*dat[,11], dat[,9])

如果条件为TRUE (即is.na(dat[,9]) ),则该值将被第二个参数( dat[,10]*dat[,11] )替换,否则将被第三个参数替换。 (即dat[,9] ,因此保留该值)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM