2016-12-12 8 views
-2

Rのグループ番号別に記述統計情報を生成する方法をお探しですか?answer on hereが見つかりました。これはdplyrを使用していますが、私はあまりにも多くの問題を抱えています。他の人が推奨する代替案を確認する記述統計情報グループ化 - R

私はgroup_idでグループ化された収益についての説明的な統計情報を入手したいと考えています。

group_id company  revenue 
1   Company A 200 
1   Company B 150 
1   Company C 300 
2   Company D 600 
2   Company E 800 
2   Company F 1000 
3   Company G 50 
3   Company H 80 
3   Company H 60 
と私は製品にnew_companyと呼ばれる新しいデータフレームが欲しい::の私は、会社と呼ばれるデータフレームを持っているとしましょう

group_id company revenue average min max SD 
1   Company A 200 217 150 300 62 
1   Company B 150 217 150 300 62 
1   Company C 300 217 150 300 62 
2   Company D 600 800 600 1000 163 
2   Company E 800 800 600 1000 163 
2   Company F 1000 800 600 1000 163 
3   Company G 50 63  50 80 12 
3   Company H 80 63  50 80 12 
3   Company H 60 63  50 80 12 

繰り返しますが、私はdplyrする選択肢を探しています。あなたはさまざまな機能のための行ごとにすべての値を作成するために使用ave()のような派手な何かをしてからちょうど元data.frameでそれを組み合わせることができ、サンプルデータフレームを使用して

答えて

1

dd<-read.csv(text="group_id,company,revenue 
1,Company A,200 
1,Company B,150 
1,Company C,300 
2,Company D,600 
2,Company E,800 
2,Company F,1000 
3,Company G,50 
3,Company H,80 
3,Company H,60", header=T) 

ありがとうございます。

ext <- with(dd, Map(function(x) ave(revenue, group_id, FUN=x), 
    list(avg=mean, min=min, max=max, SD=sd))) 
cbind(dd, ext) 
# group_id company revenue  avg min max  SD 
# 1  1 Company A  200 216.66667 150 300 76.37626 
# 2  1 Company B  150 216.66667 150 300 76.37626 
# 3  1 Company C  300 216.66667 150 300 76.37626 
# 4  2 Company D  600 800.00000 600 1000 200.00000 
# 5  2 Company E  800 800.00000 600 1000 200.00000 
# 6  2 Company F 1000 800.00000 600 1000 200.00000 
# 7  3 Company G  50 63.33333 50 80 15.27525 
# 8  3 Company H  80 63.33333 50 80 15.27525 
# 9  3 Company H  60 63.33333 50 80 15.27525 

が、本当に簡単dplyrコマンドが容易になるだろう。

dd %>% group_by(group_id) %>% 
    mutate(
    avg=mean(revenue), 
    min=min(revenue), 
    max=max(revenue), 
    SD=sd(revenue)) 
+0

ありがとう、Mr. Flick。最後の解決策が動作し、私はplyrがインストールされていることを知りました。これは、group_byコマンドをすべて一緒に逃してしまっていました。もう一度お返事ありがとうございます。 – BlueDevilPride

関連する問題