使用group_by后无法保存data.frame并汇总R中的函数(dplyr)

时间:2016-04-24 17:43:20

标签: r csv dplyr

data_different_tech_count <- data_different_tech %>% 
                                 group_by(tech) %>% 
                                 summarise(count(tech))

现在这给了我一个data.frame作为输出,但是我无法保存文件。当我尝试更改组合名称时,它会显示我:

colnames(data1)[c(1,2)]<- c("tech","count")
  

colnames<-中的错误(*tmp*,值= c(&#34; tech&#34;,&#34; count&#34;)):     &#39;名称&#39; attribute [2]的长度必须与vector [1]

的长度相同

当我使用时

colnames(data_different_count_tech)

它说我只有一列。 当我使用

summary(data_different_count_tech)

它显示了两列。

当我尝试将此文件写入我的目录时,它会返回以下错误。

write.csv(file=data_different_tech_count,"tech.csv")
  

矩阵错误(unlist(value,recursive = FALSE,use.names = FALSE),nrow = nr,:     长度&#39; dimnames&#39; [2]不等于数组范围

1 个答案:

答案 0 :(得分:0)

您是否尝试计算tech的每个值出现的次数?如果没有可重复的例子,我无法让你的例子工作。

如果是这样,这里有一些替代方案可以满足您的需求:

使用Dplyr

data_different_tech_count <- data_different_tech %>% group_by(tech) %>% summarise(count = n())

使用Base R

data_different_tech_count <- as.data.frame(table(data_different_tech$tech)) 
colnames(data_different_tech_count) <- c("tech","count")