2017-05-25 3 views
1

とR内のグループによって平均は今、私の目標は同じで、「データの総平均値」を見つけると「Rにおけるサブグループで平均」することである私は、データセットを持って総平均&dplyr

df <- data.frame(dive=factor(sample(c("dive1","dive2"),10,replace=TRUE)),speed=runif(10)) 

のようなものを想定しますデータ。だから、私は、だから私は求めているすべては、私が間違っている

df%>% summarise(avg=mean(speed))%>% 
group_by(dive)%>% 
summarise(Avg_group=mean(dive)) 

は私が知っているコードを使用しています私は

# dive Total_Mean speed 
# 1 dive1 0.52  0.5790946 
# 2 dive2 0.52  0.4864489 

ような何かを得るべきであると言うことができますどのように私はGROUP BYと私のデータを開くことができます異なる時間に

答えて

4

をさまざまな操作を実行するためのdplyrのゲインこのお試しください:私たちはを使用することができます

df %>% 
    mutate(avg=mean(speed)) %>% 
    group_by(dive) %>% 
    summarise(Avg_group=mean(speed),Total_Mean=first(avg)) 
+0

こんにちはニコラ、ありがとうございました。それは魅力のように働いた。 1つの簡単な質問、列で3つ以上の集計が集計されていて、全データの代わりに2つのグループに合計平均が欲しい場合はどうすればいいですか? –

+1

申し訳ありませんが、あなたの質問が分かりません。あなたは確かに新しい質問を開いて、あなたの入力と希望する出力が何であるかを明確に述べることができると考えてください。役に立つ助けを受ける可能性が非常に高いでしょう。 – nicola

1

library(data.table) 
setDT(df)[, .(Avg_group = mean(speed), Total_mean = mean(df$speed)),.(dive)] 
#  dive Avg_group Total_mean 
#1: dive2 0.4733421 0.4238937 
#2: dive1 0.3744452 0.4238937