假设我有一个包含“A”列的数据框df,它采用实际值。我知道我只能从数据框中选择这一列,而且我知道一些从中提取某些数据的命令,例如
df.A = df[df$A > 5 & df$A < 10, c("A")]
但是,我如何选择例如四分位数范围,更常见的是选择减去最小X%和最大Y%值的列?
干杯
答案 0 :(得分:3)
您可以使用quantile()
:
df.A <- df[df$A > quantile(df$A,0.25) & df$A < quantile(df$A,0.75), c("A")]
答案 1 :(得分: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'))