2

実際の値をとる列「A」を含むデータフレームdfがあるとします。データフレームからこの列のみを選択できることと、そこから特定のデータを抽出するためのコマンドを知っています。

df.A = df[df$A > 5 & df$A < 10, c("A")]

ただし、たとえば四分位範囲をどのように選択し、より一般的には、値の最小のXパーセントと最大のYパーセントを引いた列を取得しますか?

乾杯

4

2 に答える 2

3

使用できますquantile()

df.A <- df[df$A > quantile(df$A,0.25) & df$A < quantile(df$A,0.75), c("A")]
于 2012-12-04T13:05:07.957 に答える
1

詳細は ?subset を参照してください。ただし、再現可能な例を示し、変数名として df を使用しない方がよいでしょう。df 関数があります。

例を再現します

     dff <- data.frame(A= sample(1:100),B=sample(1:100))

分位範囲を計算します

     qq <- quantile(A,probs=c(.025,.975))

選択にはサブセットを使用します

     subset(dff, A > qq[1] & A< qq[1],select=c('A'))
于 2012-12-04T13:09:45.683 に答える