如何在 R 資料框中根據另一列的值重複列值?


為了在 R 資料框中根據另一列的值重複列值,我們可以按照以下步驟操作:

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

  • 然後,使用 rep 函式和 cbind 函式來根據另一列的值重複矩陣中的列值。

示例

建立資料框

讓我們建立一個如下所示的資料框:

x<-1:10
y<-sample(1:5,10,replace=TRUE)
df<-data.frame(x,y)
df

輸出

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

    x y
1   1 1
2   2 5
3   3 5
4   4 5
5   5 3
6   6 2
7   7 1
8   8 2
9   9 3
10 10 3

根據另一列的值重複列值

使用 rep 函式和 cbind 函式來根據列 y 中的值重複資料框 df 中列 x 的值:

x<-1:10
y<-sample(1:5,10,replace=TRUE)
df<-data.frame(x,y)
cbind(rep(df$x,times=df$y),rep(df$y,times=df$y))

輸出

     [,1] [,2]
[1,]   1   3
[2,]   1   3
[3,]   1   3
[4,]   2   5
[5,]   2   5
[6,]   2   5
[7,]   2   5
[8,]   2   5
[9,]   3   2
[10,]  3   2
[11,]  4   4
[12,]  4   4
[13,]  4   4
[14,]  4   4
[15,]  5   1
[16,]  6   4
[17,]  6   4
[18,]  6   4
[19,]  6   4
[20,]  7   1
[21,]  8   3
[22,]  8   3
[23,]  8   3
[24,]  9   1
[25,] 10   5
[26,] 10   5
[27,] 10   5
[28,] 10   5
[29,] 10   5

更新於: 2021年11月11日

2K+ 閱讀量

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告