如何在R的data.table物件中分離單列中的兩個值?


為了分離R中data.table物件單列中的兩個值,我們可以按照以下步驟操作:

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

  • 然後,使用tidyr包中的separate函式來分離單列中的值。

示例

建立data.table物件

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

library(data.table)
DT<-
data.table(x=sample(c("A,B","B,C","C,D","D,E","E,F","F,G","G,H"),25,replace=TRUE))
DT

輸出

執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出將在您的系統上有所不同):

    x
1:  C,D
2:  C,D
3:  C,D
4:  A,B
5:  F,G
6:  A,B
7:  C,D
8:  G,H
9:  B,C
10: C,D
11: G,H
12: G,H
13: G,H
14: C,D
15: F,G
16: G,H
17: C,D
18: C,D
19: F,G
20: G,H
21: E,F
22: A,B
23: G,H
24: D,E
25: F,G
     x

分離列中的值

使用tidyr包中的separate函式來分離data.table物件DT中x列的值:

library(data.table)
DT<-
data.table(x=sample(c("A,B","B,C","C,D","D,E","E,F","F,G","G,H"),25,replace=TRUE))
library(tidyr)
DT %>% separate(x,c("Group1","Group2"),sep=",")

輸出

  Group1 Group2
1:  C     D
2:  C     D
3:  C     D
4:  A     B
5:  F     G
6:  A     B
7:  C     D
8:  G     H
9:  B     C
10: C     D
11: G     H
12: G     H
13: G     H
14: C     D
15: F     G
16: G     H
17: C     D
18: C     D
19: F     G
20: G     H
21: E     F
22: A     B
23: G     H
24: D     E
25: F     G
   Group1 Group2

更新於:2021年11月15日

292 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

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