我尝试在我的数据框中得到每个标志1-3的总和,并保留相同的列名,所以我得到单行,但看起来我在这里遗漏了一些df / Numeric转换,请问建议,不确定乳清我昏暗(dfs)= NULL ??
df <- data.frame(label=2017, F1=1:4, F2=2:5, F3=3:6)
df
dfs <- c( max(df$label), sum(df$F1), sum(df$F2), sum(df$F3))
#dfs <- data.frame(c( max(df$label), sum(df$F1), sum(df$F2), sum(df$F3)) )
dfs
str(dfs)
dim(dfs)
colnames(dfs) <-c('Label', 'F1','F2','F3')
## Error in `colnames<-`(`*tmp*`, value = c("Label", "F1", "F2", "F3")) :
## attempt to set 'colnames' on an object with less than two dimensions
答案 0 :(得分:0)
您的c()
创建了一个向量,而不是数据框。如果将矢量转换为as.data.frame(t(dfs))
的单行数据框,则可以设置列名称。
您可能也对colSums(),甚至How to sum variables by group? R-FAQ.
感兴趣