如何從 R 資料框中的每行的序列中刪除重複項?
要從 R 資料框中的每行的序列中刪除重複項,我們可以按照以下步驟進行操作 -
- 建立一個數據框。
- 刪除資料框行中的重複序列
建立資料框
讓我們建立一個如下所示的資料框 -
x1<-rpois(20,1) x2<-rpois(20,1) x3<-rpois(20,1) x4<-rpois(20,1) df<-data.frame(x1,x2,x3,x4) df
執行上述指令碼後,將生成以下輸出(此輸出會因您的系統隨機性而有所不同) -
x1 x2 x3 x4 1 0 1 1 0 2 0 0 0 0 3 0 1 2 2 4 3 1 1 0 5 0 1 1 2 6 0 1 0 1 7 1 0 1 1 8 0 0 0 1 9 0 0 0 2 10 2 0 0 1 11 0 0 0 3 12 0 1 1 2 13 0 3 2 0 14 2 1 0 2 15 0 0 0 1 16 0 0 0 3 17 1 1 2 0 18 1 0 0 0 19 1 0 1 3 20 0 0 2 1
刪除資料框行中的重複序列
使用 apply 函式和 rle 函式刪除 df 行中的重複項 -
x1<-rpois(20,1) x2<-rpois(20,1) x3<-rpois(20,1) x4<-rpois(20,1) df<-data.frame(x1,x2,x3,x4) apply(df,1,FUN=function(x) rle(x)$values)
輸出
[[1]] x1 x3 x4 0 1 0 [[2]] x4 0 [[3]] x1 x2 x4 0 1 2 [[4]] x1 x3 x4 3 1 0 [[5]] x1 x3 x4 0 1 2 [[6]] x1 x2 x3 x4 0 1 0 1 [[7]] x1 x2 x4 1 0 1 [[8]] x3 x4 0 1 [[9]] x3 x4 0 2 [[10]] x1 x3 x4 2 0 1 [[11]] x3 x4 0 3 [[12]] x1 x3 x4 0 1 2 [[13]] x1 x2 x3 x4 0 3 2 0 [[14]] x1 x2 x3 x4 2 1 0 2 [[15]] x3 x4 0 1 [[16]] x3 x4 0 3 [[17]] x2 x3 x4 1 2 0 [[18]] x1 x4 1 0 [[19]] x1 x2 x3 x4 1 0 1 3 [[20]] x2 x3 x4 0 2 1
廣告