创建一个名为“daily”的新列,它是24个小时列的总和

时间:2016-10-11 16:26:27

标签: r

问题:创建一个名为daily的新列,它是24小时列的总和。

我将rnf6080.dat中的数据集(在http://www.stats.uwo.ca/faculty/braun/data/rnf6080.dat处可用)分配给名为rain.df的数据帧。我重新标记了这个data.frame的列:

names(rain) <- c("year", "month", "day", seq(0,23))

到目前为止,我试过

df <- c(rain$0, rain$1, rain$2, rain$3, rain$4, rain$5, rain$6, rain$7,
        rain$8, rain$9, rain$10, rain$11, rain$12, rain$13, rain$14, 
        rain$15, rain$16, rain$17, rain$18, rain$19, rain$20, rain$21,
        rain$22, rain$23)

rain["daily"] <- colSums(df)

我得到了

  

colSums(df)出错:&#39; x&#39;必须是至少两个维度的数组。

事实上,我知道该怎么做,但我不知道该怎么做。我知道我必须总结矢量才能获得daily,但我对如何做到感到困惑。

问题:任何人都可以改进并告诉我可以修改哪些内容来解决我的问题吗?

1 个答案:

答案 0 :(得分:0)

如果您希望对已标记为0-23的列进行求和,则以下代码将起作用。

rain.df$daily <- rowSums(rain.df[,4:27])