R 合并列和合并内容
例如,我希望合并两列并将其内容添加到一起R 合并列和合并内容,r,dplyr,plyr,R,Dplyr,Plyr,例如,我希望合并两列并将其内容添加到一起 X1 X2 3 5 6 9 3 3 0 6 NA 4 NA NA 创造 X3 8 15 6 6 4 NA 如有任何指示,我们将不胜感激。在R底,您可以: X3 <- X1 + X2 df %>% mutate(X3 = X1 + X2) 也就是说,假设X1和X2是df中的两个独立列 基本R解决方案将在单独的向量上工作,即使不是在单个df中 行和适用于此类情况。如果data.frame的列数超过2列,则在下面的解决
X1 X2
3 5
6 9
3 3
0 6
NA 4
NA NA
创造
X3
8
15
6
6
4
NA
如有任何指示,我们将不胜感激。在R底,您可以:
X3 <- X1 + X2
df %>% mutate(X3 = X1 + X2)
也就是说,假设X1和X2是df中的两个独立列
基本R解决方案将在单独的向量上工作,即使不是在单个df中
行和
适用于此类情况。如果data.frame的列数超过2列,则在下面的解决方案中,df
应替换为df[c(“X1”、“X2”)]
如果OP希望最后一行具有NA
,则解决方案如下:
df$X3 <- ifelse(rowSums(is.na(df)) == ncol(df), NA, rowSums(df, na.rm = TRUE))
df
# X1 X2 X3
# 1 3 5 8
# 2 6 9 15
# 3 3 3 6
# 4 0 6 6
# 5 NA 4 4
# 6 NA NA NA
数据:
df <- read.table(text =
"X1 X2
3 5
6 9
3 3
0 6
NA 4
NA NA",
header = TRUE)
df查找rowSums()
除非您显式地子集(df$X1+df$X2
),将与一起使用,或者使用向量(例如,通过使用附加
)将全局环境丢弃,否则基本R解决方案将不会运行sum
也会尝试将所有数据相加为一个数字,这不是所需的。此外,这些方法都不会像OP要求的那样处理NA
。tl;dr:在发布之前,您需要运行代码以确保其正常工作。
df$X3 <- rowSums(df, na.rm = TRUE)
df
# X1 X2 X3
# 1 3 5 8
# 2 6 9 15
# 3 3 3 6
# 4 0 6 6
# 5 NA 4 4
# 6 NA NA 0
df <- read.table(text =
"X1 X2
3 5
6 9
3 3
0 6
NA 4
NA NA",
header = TRUE)