如何从 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

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

输出

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

从数据框的行中连续删除重复项

使用带有 rle 函数的 apply 函数删除 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

以上是 如何从 R 数据框中的每一行中连续删除重复项? 的全部内容, 来源链接: utcz.com/z/356881.html

回到顶部