如何在 R 資料框中從字串中提取數字?


若要從 R 資料框中的字串中提取數字,我們可以按照以下步驟操作 −

  • 首先,建立一個數據框。

  • 然後,使用 gsub 函式從字串中提取數字。

示例

建立資料框

讓我們建立一個數據框,如下所示 −

x<-
sample(c("grp12","grp01","grp05","grp03","grp04","grp09","grp10","grp11","grp02","grp06","grp07","grp08"),25,replace=TRUE)
df<-data.frame(x)
df

輸出

執行以上指令碼後,將生成以下輸出(由於隨機化的原因,此輸出在你的系統上會略有不同) −

    x
1  grp01
2  grp04
3  grp08
4  grp01
5  grp12
6  grp08
7  grp08
8  grp09
9  grp02
10 grp12
11 grp05
12 grp10
13 grp04
14 grp06
15 grp03
16 grp08
17 grp06
18 grp05
19 grp10
20 grp10
21 grp06
22 grp04
23 grp04
24 grp06
25 grp06

從字串中提取數字

使用 gsub 函式從資料框 df 中字串列 x 中提取數字 −

x<-
sample(c("grp12","grp01","grp05","grp03","grp04","grp09","grp10","grp11","grp02","grp06","grp07","grp08"),25,replace=TRUE)
df<-data.frame(x)
df$Group<-gsub("[^0-9]","",df$x)
df

輸出

     x  Group
1  grp01 01
2  grp04 04
3  grp08 08
4  grp01 01
5  grp12 12
6  grp08 08
7  grp08 08
8  grp09 09
9  grp02 02
10 grp12 12
11 grp05 05
12 grp10 10
13 grp04 04
14 grp06 06
15 grp03 03
16 grp08 08
17 grp06 06
18 grp05 05
19 grp10 10
20 grp10 10
21 grp06 06
22 grp04 04
23 grp04 04
24 grp06 06
25 grp06 06

更新時間: 2021 年 11 月 11 日

2K+ 瀏覽量

開啟 職業生涯

完成課程後獲取認證

立即開始
廣告