如何在R的data.table物件列中分離特定文字和其餘文字?


為了在R的data.table物件列中分離特定文字和其餘文字,我們可以按照以下步驟操作:

  • 首先,建立一個data.table物件。

  • 然後,使用stringr包中的str_split函式來分離第一個文字值和其餘文字。

示例

建立data.table物件

讓我們建立一個如下所示的data.table物件:

library(data.table)
Student_ID<-
sample(c("1Rosy","3Numan","8John","2Shera","9Hina"),25,replace=TRUE)
DT<-data.table(Student_ID)
DT

輸出

執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出將因您的系統而異):

   Student_ID
1:  9Hina
2:  1Rosy
3:  3Numan
4:  9Hina
5:  8John
6:  9Hina
7:  9Hina
8:  1Rosy
9:  3Numan
10: 8John
11: 9Hina
12: 1Rosy
13: 9Hina
14: 8John
15: 1Rosy
16: 2Shera
17: 1Rosy
18: 3Numan
19: 8John
20: 1Rosy
21: 9Hina
22: 8John
23: 8John
24: 8John
25: 9Hina
Student_ID

分離字串列中的第一個值和其餘文字

使用stringr包中的str_split函式來分離data.table物件DT的Student_ID列中每一行的第一個文字值和其餘文字:

library(data.table)
Student_ID<-
sample(c("1Rosy","3Numan","8John","2Shera","9Hina"),25,replace=TRUE)
DT<-data.table(Student_ID)
library(stringr)
DT$ID_Name<-str_split(DT$Student_ID,"(?<=.{1})",2)
DT

輸出

   Student_ID ID_Name
1:  9Hina 9,   Hina
2:  1Rosy 1,   Rosy
3:  3Numan 3,  Numan
4:  9Hina 9,   Hina
5:  8John 8,   John
6:  9Hina 9,   Hina
7:  9Hina 9,   Hina
8:  1Rosy 1,   Rosy
9:  3Numan 3,  Numan
10: 8John 8,   John
11: 9Hina 9,   Hina
12: 1Rosy 1,   Rosy
13: 9Hina 9,   Hina
14: 8John 8,   John
15: 1Rosy 1,   Rosy
16: 2Shera 2,  Shera
17: 1Rosy 1,   Rosy
18: 3Numan 3  ,Numan
19: 8John 8,   John
20: 1Rosy 1,   Rosy
21: 9Hina 9,   Hina
22: 8John 8,   John
23: 8John 8,   John
24: 8John 8,   John
25: 9Hina 9,   Hina
Student_ID    ID_Name

更新於:2021年11月15日

130 次檢視

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.