実際の値をとる列「A」を含むデータフレームdfがあるとします。データフレームからこの列のみを選択できることと、そこから特定のデータを抽出するためのコマンドを知っています。
df.A = df[df$A > 5 & df$A < 10, c("A")]
ただし、たとえば四分位範囲をどのように選択し、より一般的には、値の最小のXパーセントと最大のYパーセントを引いた列を取得しますか?
乾杯
実際の値をとる列「A」を含むデータフレームdfがあるとします。データフレームからこの列のみを選択できることと、そこから特定のデータを抽出するためのコマンドを知っています。
df.A = df[df$A > 5 & df$A < 10, c("A")]
ただし、たとえば四分位範囲をどのように選択し、より一般的には、値の最小のXパーセントと最大のYパーセントを引いた列を取得しますか?
乾杯
使用できますquantile()
:
df.A <- df[df$A > quantile(df$A,0.25) & df$A < quantile(df$A,0.75), c("A")]
詳細は ?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'))