2017-02-14 34 views
-5

我有几行数字数据,每一行代表不同的数量或测量值。我应该让列等于不同数量的手段,不同数量的IQRS以及不同数量的中间值,但似乎没有办法做到这一点?使数据框中的列等于中位数,平均值等? (R)

+0

输入和输出的例子有利于每个人。 – thisisrg

+0

输入:data.frame(c(1,3,5),c(1,1,2),c(256,5,4)) – qazwsxedcrfvtgbyhn

+0

对于每个指定的需求,输出应该是行,然后是列,中位数等) – qazwsxedcrfvtgbyhn

回答

0

您的数据框:

df<-data.frame(x=c(1, 3 , 5), y=c(1, 1, 2), z=c(256, 5, 4)) 

使用dplyr/tidyr:

df1<-df%>%gather(var,val,x:z)%>%group_by(var)%>%summarise(max=max(val),min=min(val),avg=mean(val),median=median(val)) 

您可以将此扩展到任何数量的汇总统计信息。

# A tibble: 3 × 5 
    var max min  avg median 
    <chr> <dbl> <dbl>  <dbl> <dbl> 
1  x  5  1 3.000000  3 
2  y  2  1 1.333333  1 
3  z 256  4 88.333333  5 
相关问题