在R中创建一个新数据框,其中包含另一个数据框的统计信息

时间:2019-05-02 14:36:10

标签: r dataframe statistics aggregate summary

我需要创建一个新数据框,其中包含来自另一个数据框的统计信息,但是我不知道该怎么做。我拥有的数据框称为“日”,而我创建并想要完成的数据框称为“统计”。

我尝试了汇总和汇总,但是没有达到想要的结果。

stats <- data.frame("Place"=NA, "Mean"=NA, "Min"=NA, "Max"=NA, "sd"=NA)
summary(substet(day, cd="2A", select=price))
try <- aggregate(price~dep, day, mean)

我的数据框“天”:

day         carb      dep     cd price  p1      p2     p3     p4

02/03/2019  Gasoline  HR      NA 1440   place1  NA     NA      NA
03/03/2019  Gasoline  Corsica 2A 1445   NA      NA     NA      NA

所以我总共有25个位置,我想做类似的事情:如果dep ==“ Corsica”和carb ==“ gasoline”,那么就获得像这样的数据框“ stats”:

Place   Mean   Min     Max     sd
Corsica value  value   value   value

这个想法是用其他24个地方的值逐步完成此数据框。

希望您能理解我想说的话,对不起,但是我是一个真正的初学者。

1 个答案:

答案 0 :(得分:0)

使用dplyr使用以下代码非常简单。

library(dplyr)
stats <- day %>% 
    group_by(dep, carb) %>% 
    summarize(mean=mean(price, na.rm = T), 
              min=min(price, na.rm = T), 
              max=max(price, na.rm = T), 
              sd=sd(price, na.rm = T))