如何在R資料框中檢查列是否存在?


如果我們有非常大的資料集,那麼我們很可能會忘記列名,因此,如果我們知道列名,我們可能想要檢查某個特定列是否存在於資料框中。為此,我們可以使用grep函式,如果列名存在於資料框中,則返回列名,否則返回0。要了解其工作原理,請檢視下面的示例。

示例1

 線上演示

考慮下面的資料框:

Gender<−sample(c("Male","Female"),20,replace=TRUE)
Y<−rpois(20,5)
df1<−data.frame(Gender,Y)
df1

輸出

Gender Y
1 Male 7
2 Female 4
3 Male 3
4 Male 3
5 Male 4
6 Female 7
7 Male 10
8 Female 4
9 Female 4
10 Female 6
11 Female 6
12 Female 2
13 Male 6
14 Female 4
15 Female 2
16 Male 5
17 Male 1
18 Male 8
19 Female 5
20 Female 2

檢查列“Gender”是否存在於df1中:

示例

grep("Gender",names(df1),value=TRUE)

輸出

[1] "Gender"

檢查列“Sex”是否存在於df1中:

輸出

grep("Sex",names(df1),value=TRUE)
character(0)

示例2

 線上演示

ID<−1:20
Weather<−sample(c("Summer","Rainy","Winter"),20,replace=TRUE)
df2<−data.frame(ID,Weather)
df2

輸出

ID Weather
1 1 Summer
2 2 Rainy
3 3 Summer
4 4 Summer
5 5 Winter
6 6 Summer
7 7 Rainy
8 8 Rainy
9 9 Rainy
10 10 Winter
11 11 Winter
12 12 Rainy
13 13 Winter
14 14 Winter
15 15 Summer
16 16 Winter
17 17 Rainy
18 18 Summer
19 19 Winter
20 20 Rainy

檢查列“atmosphere”是否存在於df2中:

grep("atmosphere",names(df2),value=TRUE)
character(0)

檢查列“Weather”是否存在於df2中:

示例

grep("Weather",names(df2),value=TRUE)

輸出

[1] "Weather"

更新於:2021年2月9日

822 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.