如何删除R数据框列中的字符?
要删除R数据帧列中的字符,我们可以使用gsub函数,该函数会将字符替换为空白。例如,如果我们有一个名为df的数据框,其中包含一个字符列,例如x,每个值中都有一个字符ID,则可以使用命令gsub(“ ID”,“”,as.character(df $X))。
例1
考虑以下数据帧-
> x1<-sample(c("Male1","Female1"),20,replace=TRUE)输出结果> x2<-rpois(20,5)
> df1<-data.frame(x1,x2)
> df1
x1 x21 Male1 8
2 Female1 4
3 Male1 9
4 Male1 2
5 Male1 7
6 Female1 5
7 Male1 3
8 Female1 6
9 Female1 4
10 Female1 3
11 Male1 5
12 Male1 4
13 Female1 7
14 Male1 6
15 Female1 5
16 Male1 3
17 Female1 10
18 Female1 4
19 Male1 7
20 Female1 3
从x1中的所有值中删除1-
> df1$x1<-gsub("1","",as.character(df1$x1))输出结果> df1
x1 x21 Male 8
2 Female 4
3 Male 9
4 Male 2
5 Male 7
6 Female 5
7 Male 3
8 Female 6
9 Female 4
10 Female 3
11 Male 5
12 Male 4
13 Female 7
14 Male 6
15 Female 5
16 Male 3
17 Female 10
18 Female 4
19 Male 7
20 Female 3
例2
> y1<-sample(c("Hot#","Cold#"),20,replace=TRUE)输出结果> y2<-rnorm(20)
> df2<-data.frame(y1,y2)
> df2
y1 y21 Cold# 0.1725073
2 Hot# -0.4692023
3 Hot# 2.4386160
4 Cold# -1.3592685
5 Hot# 0.4500866
6 Cold# -0.7023989
7 Cold# 0.7383042
8 Hot# -1.7325754
9 Hot# 0.2053521
10 Hot# -2.0123750
11 Cold# -0.7203218
12 Hot# 1.2389079
13 Cold# -0.6401144
14 Cold# -0.6136728
15 Hot# 1.2877643
16 Cold# 0.4291966
17 Cold# 1.8316996
18 Hot# 0.8165865
19 Cold# -0.3978465
20 Cold# -0.9352063
从y1中的所有值中删除#-
> df2$y1<-gsub("#","",as.character(df2$y1))输出结果> df2
y1 y21 Cold 0.1725073
2 Hot -0.4692023
3 Hot 2.4386160
4 Cold -1.3592685
5 Hot 0.4500866
6 Cold -0.7023989
7 Cold 0.7383042
8 Hot -1.7325754
9 Hot 0.2053521
10 Hot -2.0123750
11 Cold -0.7203218
12 Hot 1.2389079
13 Cold -0.6401144
14 Cold -0.6136728
15 Hot 1.2877643
16 Cold 0.4291966
17 Cold 1.8316996
18 Hot 0.8165865
19 Cold -0.3978465
20 Cold -0.9352063
以上是 如何删除R数据框列中的字符? 的全部内容, 来源链接: utcz.com/z/337057.html