如何从 R 数据框列中的每个值中删除最后位置的连字符?

要从 R 数据框列中的每个值中删除最后位置的连字符,我们可以按照以下步骤操作 -

  • 首先,创建一个数据框,其中的列在每个值的最后位置都有连字符。

  • 然后,使用 gsub 函数从列中的每个值中删除最后位置的连字符。

示例

创建数据框

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

x<-sample(c("43-","12-","45-","30-","14-","25-","31-","37-"),25,replace=TRUE)
df<-data.frame(x)
df
输出结果

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

    x
1  37-
2  14-
3  37-
4  30-
5  31-
6  30-
7  37-
8  12-
9  37-
10 43-
11 30-
12 37-
13 25-
14 37-
15 45-
16 14-
17 45-
18 12-
19 43-
20 30-
21 12-
22 31-
23 12-
24 25-
25 31-

从最后一个位置删除连字符

使用 gsub 函数从数据框 df 的 x 列中的每个值中删除最后位置的连字符,如下所示 -

x<-sample(c("43-","12-","45-","30-","14-","25-","31-","37-"),25,replace=TRUE)
df<-data.frame(x)
df$new_x<-gsub("-$","",df$x)
df
输出结果
   x  new_x
1  37- 37
2  14- 14
3  37- 37
4  30- 30
5  31- 31
6  30- 30
7  37- 37
8  12- 12
9  37- 37
10 43- 43
11 30- 30
12 37- 37
13 25- 25
14 37- 37
15 45- 45
16 14- 14
17 45- 45
18 12- 12
19 43- 43
20 30- 30
21 12- 12
22 31- 31
23 12- 12
24 25- 25
25 31- 31