如何在 R 数据框中更改文本值?


要更改 R 数据框中的文本值,我们可以简单地使用 replace 函数。

例如,如果我们有一个名为 df 的数据框,其中包含一个名为 Names 的列,并且其中一个姓名(例如 Raj)拼写错误为 Raaj,那么我们可以使用以下命令将 Raaj 替换为 Raj:

df$Names<-replace(df$Names,df$Names=="Raaj","Raj")

示例 1

以下代码片段创建了一个示例数据框:

Gender<-sample(c("Male","Femalee"),20,replace=TRUE)
Gender_dat<-data.frame(Gender)
Gender_dat

创建了以下数据框

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

要在上面创建的数据框中将 df1 中的 Femalee 替换为 Female,请将以下代码添加到上述代码片段中:

Gender<-sample(c("Male","Female"),20,replace=TRUE)
Gender_dat<-data.frame(Gender)
Gender_dat$Gender<-
replace(Gender_dat$Gender,Gender_dat$Gender=="Femalee","Female")
Gender_dat

输出

如果您将以上所有代码片段作为单个程序执行,则会生成以下输出:

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

示例 2

以下代码片段创建了一个示例数据框:

Transaction<-sample(c("Online","Ofline"),20,replace=TRUE)
Trans_dat<-data.frame(Transaction)
Trans_dat

创建了以下数据框

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

要在上面创建的数据框中将 df2 中的 Ofline 替换为 Offline,请将以下代码添加到上述代码片段中:

Transaction<-sample(c("Online","Offline"),20,replace=TRUE)
Trans_dat<-data.frame(Transaction)
Trans_dat$Transaction<-
replace(Trans_dat$Transaction,Trans_dat$Transaction=="Ofline","Offline")
Trans_dat

输出

如果您将以上所有代码片段作为单个程序执行,则会生成以下输出:

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

更新于: 2021年11月2日

3K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告