如何在R数据框列中按顺序删除重复的数字?

要按顺序删除 R 数据框列中的重复数字,我们可以按照以下步骤操作 -

  • 首先,创建一个数据框。

  • 然后,使用 diff 函数和带单方括号的子集按顺序删除重复的数字。

示例 1

创建数据框

让我们创建一个数据框,如下所示 -

x<-rpois(25,3)
df<-data.frame(x)
df
输出结果

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

   x
1  4
2  3
3  6
4  5
5  4
6  3
7  3
8  4
9  4
10 4
11 1
12 3
13 4
14 2
15 3
16 0
17 0
18 4
19 4
20 2
21 3
22 2
23 2
24 2
25 2

按顺序删除重复的数字

使用 diff 函数和带单方括号的子集从数据框 df 的 x 列中按顺序删除重复的数字 -

x<-rpois(25,3)
df<-data.frame(x)
df$x[c(1,diff(df$x))!=0]
输出结果
[1] 1 3 4 6 5 2 3 4 1 5 4 3 0 1 4 3 2 7 3 4 1 3 4

示例 2

创建数据框

让我们创建一个数据框,如下所示 -

y<-sample(1:4,25,replace=TRUE)
dat<-data.frame(y)
dat
输出结果

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

   y
1  3
2  3
3  3
4  1
5  1
6  3
7  1
8  1
9  3
10 4
11 1
12 2
13 2
14 2
15 4
16 1
17 2
18 2
19 4
20 3
21 2
22 1
23 1
24 3
25 2

按顺序删除重复的数字

使用 diff 函数和带单方括号的子集从数据框 dat 的 y 列中按顺序删除重复的数字 -

y<-sample(1:4,25,replace=TRUE)
dat<-data.frame(y)
dat$y[c(1,diff(dat$y))!=0]
输出结果
[1] 3 1 3 1 3 4 1 2 4 1 2 4 3 2 1 3 2

猜你喜欢