gpt4 book ai didi

r - 合并两列维护缺失值

转载 作者:行者123 更新时间:2023-12-04 22:39:38 26 4
gpt4 key购买 nike

我正在尝试添加两列。我的数据框是这样的:

data <- data.frame(a = c(0,1,NA,0,NA,NA),
x = c(NA,NA,NA,NA,1,0),
t = c(NA,2,NA,NA,2,0))

我想添加一些这样的列:
yep  <- cbind.data.frame( data$a, data$x, rowSums(data[,c(1, 2)], na.rm = TRUE))

但是输出如下所示:
> yep

data$a data$x rowSums(data[,c(1, 2)], na.rm = TRUE)
1 0 NA 0
2 1 NA 1
3 NA NA 0
4 0 NA 0
5 NA 1 1
6 NA 0 0

我想要这样的输出:
> yep

data$a data$x rowSums(data[,c(1, 2)], na.rm = TRUE)
1 0 NA 0
2 1 NA 1
3 NA NA NA
4 0 NA 0
5 NA 1 1
6 NA 0 0

如果列只包含 NA 值,我想保留 NA 值。

我怎么能做到这一点?

最佳答案

基础 R:

data <- data.frame("a" = c(0,1,NA,0,NA,NA),
"x" = c(NA,NA,NA,NA,1,0),
"t" = c(NA,2,NA,NA,2,0)
)

yep <- cbind.data.frame( data$a, data$x, rs = rowSums(data[,c(1, 2)], na.rm = TRUE))
yep$rs[is.na(data$a) & is.na(data$x)] <- NA
yep

关于r - 合并两列维护缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52853373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com