私は、データフレームから平均とsdを計算するのは、そのパラメータのための1つの列とグループ識別子のための1つの列です。 tapply
を使用しているときにそれらを計算するにはどうすればよいですか?私はsd(v1, group, na.rm=TRUE)
を使用することができますが、tapply
を使用する場合、na.rm=TRUE
をこのステートメントに適合させることはできません。 omit.na
はオプションではありません。私はパラメータのすべてを持っており、1つの値が欠けているすべての行を除外すると、データフレームの半分を失うことなく、段階的に進めなければなりません。tapplyに引数としてna.rmを渡すには?
data("weightgain", package = "HSAUR")
tapply(weightgain$weightgain, list(weightgain$source, weightgain$type), mean)
by
ステートメントでも同様です。
x<-c(1,2,3,4,5,6,7,8,9,NA)
y<-c(2,3,NA,3,4,NA,2,3,NA,2)
group<-rep((factor(LETTERS[1:2])),5)
df<-data.frame(x,y,group)
df
by(df$x,df$group,summary)
by(df$x,df$group,mean)
sd(df$x) #result: NA
sd(df$x, na.rm=TRUE) #result: 2.738613
これを行う方法はありますか。
かなり!テーブルのいくつかの欄にそれを適用できますか?それとも、パラメータリストをループする必要がありますか? 'tapply(df [c(" x "、" y ")]、df $ group、sd、na.rm = TRUE)'そうですか? – Doc
質問は理にかなっていません。 'help(tapply)'では、名前付き項目がFUN関数に渡されるという約束を提供するものとして記述される '...'引数があることがわかります。 'tapply(df $ V1、df $ group、sd、na.rm = TRUE)' –