0
我想要在幾列上求和並根據它們創建一個新列。所以我用如果函數爲rowSums_修改代碼
df$Sum <-rowSums(df[,grep("y", names(df))])
但有時df
只包含一列,在這種情況下,我會得到錯誤。由於這個函數是我長時間編程過程的一部分,所以我想知道如何以一種方式創建一個if函數,如果df[,grep("y", names(df))]
只包含一列,那麼得到總和等於df[,grep("y", names(df))]
,否則如果df[,grep("y", names(df))]
在兩列中有多個得到求和在他們身上? 假設:
require(stats); require(graphics)
attach(cars)
cars$y1<-seq(20:69)
#cars$y2<-seq(30:79)
df<-cars
df$Sum <-rowSums(df[,grep("y", names(df))])