【发布时间】:2017-04-04 20:05:41
【问题描述】:
我正在尝试对包含不同列中的值的行求和。
rowSums(wood_plastics[,c(48,52,56,60)], na.rm=TRUE)
上面得到了我确定的列的行总和,但现在我只想对不同列中包含特定年份的行求和。我试过这个
rowSums(mydata[,c(48,52,56,60)], na.rm=TRUE, mydata$current_year = '2015')
没有成功。我想我可能必须从初始列列表中的列号 7 中挑出年份值。
感谢任何帮助。
【问题讨论】:
-
可能
rowSums(mydata[,c(48,52,56,60)] * (mydata$current_year == '2015') , na.rm=TRUE)在这些行中返回 0 或rowSums(mydata[,c(48,52,56,60)], na.rm=TRUE)[mydata$current_year != '2015']删除这些行。 -
这看起来可行!你能告诉我代码行中的 * 是做什么的吗?
-
@lmo 方法也有效。
mydata$current_year == '2015'会给你一个带有 TRUE 或 FALSE 的向量。 TRUE 当年份是 2015
标签: r