如何在R数据框列中的每个数字值之前添加字符串?

有时,数据帧的唯一标识列未按预期记录,它仅包含不能解决数据特征目的的数值。因此,我们可能希望在这些数字值之前添加一个字符串,以使数据对查看者和分析人员更敏感。借助gsub函数可以轻松完成此操作。

请看以下数据帧-

示例

set.seed(111)
x1<-1:20 x2<sample(1:10,20,replace=TRUE)
df1<-data.frame(x1,x2)
df1

输出结果

x1 x2
1 1 6
2 2 8
3 3 4
4 4 6
5 5 4
6 6 5
7 7 1
8 8 6
9 9 5
10 10 1
11 11 6
12 12 6
13 13 1
14 14 1
15 15 2
16 16 5
17 17 2
18 18 10
19 19 4
20 20 7

在数据帧df1的列x1中的每个值之前添加ID-

示例

df1$x1<-sub("^","ID",df1$x1)
df1

输出结果

x1 x2
1 ID1 4
2 ID2 3
3 ID3 9
4 ID4 5
5 ID5 3
6 ID6 8
7 ID7 10
8 ID8 1
9 ID9 10
10 ID10 4
11 ID11 8
12 ID12 10
13 ID13 9
14 ID14 8
15 ID15 1
16 ID16 7
17 ID17 5
18 ID18 1
19 ID19 9
20 ID20 8

让我们看另一个例子-

示例

Class<-1:20
Score<-sample(36:100,20)
df2<-data.frame(Class,Score)
df2

输出结果

Class Score
1 1 89
2 2 82
3 3 55
4 4 63
5 5 57
6 6 99
7 7 90
8 8 43
9 9 86
10 10 42
11 11 44
12 12 56
13 13 80
14 14 45
15 15 46
16 16 37
17 17 41
18 18 60
19 19 59
20 20 68

在数据帧df2的Class列中的每个值之前添加Class-

示例

df2$Class<-sub("^","Class ",df2$Class)
df2

输出结果

Class Score
1 Class 1 60
2 Class 2 70
3 Class 3 42
4 Class 4 87
5 Class 5 71
6 Class 6 63
7 Class 7 73
8 Class 8 100
9 Class 9 97
10 Class 10 39
11 Class 11 66
12 Class 12 41
13 Class 13 65
14 Class 14 40
15 Class 15 72
16 Class 16 89
17 Class 17 96
18 Class 18 76
19 Class 19 95
20 Class 20 77