如何為 R 資料框中的因子級別建立子集?


在資料分析中,我們經常處理因子變數,而這些因子變數有不同的級別。有時,我們想為 R 資料框建立特定因子級別的子集,以只針對因子變數的特定級別分析資料。這可以透過使用 subset 函式輕鬆完成。

示例

考慮以下資料框−

> set.seed(99)
> Factor<-rep(c("India","China","USA","UK","Canada"),times=4)
> Percentage<-sample(1:100,20)
> df<-data.frame(Factor,Percentage)
> df
  Factor Percentage
1   India 48
2   China 33
3     USA 44
4      UK 22
5  Canada 62
6   India 32
7   China 13
8     USA 20
9      UK 31
10 Canada 68
11   India 9
12  China 82
13    USA 88
14     UK 30
15 Canada 86
16  India 84
17  China 95
18    USA 14
19   UK 4
20 Canada 78

這裡,因子變數 Factor 有五個級別。現在,假設我們想為這些級別中的每一個級別建立一個 Percentage 子集,那麼它可以按如下所示完成−

> India<-subset(df,Factor=="India")
> India
  Factor Percentage
 1 India 48
 6 India 32
11 India  9
16 India 84
> UK<-subset(df,Factor=="UK")
> UK
 Factor Percentage
 4 UK  22
 9 UK  31
14 UK  30
19 UK   4
> China<-subset(df,Factor=="China")
> China
  Factor Percentage
 2 China 33
 7 China 13
12 China 82
17 China 95
> USA<-subset(df,Factor=="USA")
> USA
Factor Percentage
 3 USA 44
 8 USA 20
13 USA 88
18 USA 14
> Canada<-subset(df,Factor=="Canada")
> Canada
Factor Percentage
5 Canada 62
10 Canada 68
15 Canada 86
20 Canada 78

更新於:12-Aug-2020

4 千次瀏覽

開啟您的 職業生涯

完成課程後獲得認證

立即開始
廣告
© . All rights reserved.