【发布时间】:2017-10-07 15:30:06
【问题描述】:
我想创建一个新列,它是现有列中仅正值的总和。因此,在 TotalImportSE3 列中,我想仅获得正值的列 SE3-NO1、SE3-DK1、SE3-FI、SE3-SE4 的总和,如果它们都不是正值,则总和应为 0。
SE3 - NO1 SE3 - DK1 SE3 - FI SE3 - SE2 SE3 - SE4 TotalImportSE3
47 1114 666 -225 2716 -3784 NA
48 1009 671 -151 1491 -2943 NA
54 1057 711 -1062 1658 -2201 NA
55 1077 711 -1213 3492 -3015 NA
94 772 414 -501 2904 -2262 NA
95 -786 -314 -407 -2368 -2005 NA
输出应如下所示:
SE3 - NO1 SE3 - DK1 SE3 - FI SE3 - SE2 SE3 - SE4 TotalImportSE3
47 1114 666 -225 2716 -3784 4496
48 1009 671 -151 1491 -2943 3171
54 1057 711 -1062 1658 -2201 3426
55 1077 711 -1213 3492 -3015 5280
94 772 414 -501 2904 -2262 4090
95 -786 -314 -407 -2368 -2005 0
到目前为止我的努力:
df1 <- df$`SE3 - NO1`[which(Data$`SE3 - NO1`>0)]
df2 <- df$`SE3 - DK1`[which(Data$`SE3 - DK1`>0)]
但它确实创建了两个不同长度的向量,所以它完全搞砸了。
【问题讨论】:
-
我尝试使用 sum 和 which 函数,但到目前为止,我设法提取了单独列的正值,然后对它们求和,而不是同时对所有列求和。
-
您应该编辑您的问题以反映此信息。该网站旨在帮助他人,当您似乎没有做出任何努力时,人们就不太愿意提供帮助。
-
在你的最后一行,你的意思是 314 是 -314 吗?
-
是的,确实应该是-314,到目前为止,我用我的新手努力编辑了这个问题。