簡體   English   中英

如何根據因子水平對觀察結果進行子集化

[英]How to subset observations based on factor level

我有一個數據框,需要根據一個變量(向量)的值將觀察結果分組為相等數量的組。 下面是說明,我曾經使用過剪切函數來基於向量A'的值創建因子。 它創建三個級別,向量A的每個值都屬於級別/組之一。 現在,如何基於X的剪切級別提取/引用向量A的值。例如,如果要選擇A的觀察值落入級別1:[1.2.33],該怎么做?

> A<-1:5  
> X<-cut(A,breaks=quantile(A,probs=c(0:3)/3),labels=1:3,include.lowest=TRUE)  
> A  
[1] 1 2 3 4 5  
> X  
[1] [1,2.33]    [1,2.33]    (2.33,3.67] (3.67,5]    (3.67,5]   
Levels: [1,2.33] (2.33,3.67] (3.67,5]

這是比您提供的更好的示例:

> v <-1:10
> X <- cut(v, breaks=quantile(v,probs=c(0:3)/3), labels=letters[1:3], include.lowest=TRUE)
> X
 [1] a a a a b b b c c c
Levels: a b c

v中選擇兩個與"a"級相對應的選擇值,即可運行:

> v[X=="a"]
[1] 1 2 3 4 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM