如何重新编码数据框中字符列的值?
How to recode values of a character column in a dataframe?
初学者问题:重命名数据框列中的变量观察的简单方法是什么?
我有一个数据框“Stuff”,其中有一列名为“Age”的分类数据,其中一个数据变量称为“Age80+”。我了解到 R 不喜欢名称中的“+”,
例如80 岁以上 <- 出现错误
在“年龄”列中还有 7 个其他变量数字,例如“Age18_30”所以我无法有效地手动更改观察名称。
我已经看过,但我没有找到一种简单的方法来将所有“Age80+”重命名为“Age80plus”,而无需引入像“stringer”或“dplyr”这样的复杂包。数据框有 100 个“Age80+”观察值。
谢谢
我试过了
Stuff$Age<- gsub("Age80+", "Age80plus", Stuff$Age)
但这会将“Age80+”更改为“Age80plus+”而不是“Age80plus”
更改留下“+”
+
是一个特殊字符,也称为正则表达式,如果您想要实际字符,可以转义 \+
。
dat <- transform(dat, age=gsub('Age80\+', 'Age80plus', age))
dat
# id age x
# 1 1 Age80plus -0.9701187
# 2 2 Age80plus -0.5522213
# 3 3 Age80plus -1.6060125
# 4 4 Age60 -1.5417523
# 5 5 Age40 -1.9090871
数据:
dat <- structure(list(id = 1:5, age = c("Age80+", "Age80+", "Age80+",
"Age60", "Age40"), x = c(-0.970118672988532, -0.552221336521097,
-1.60601248510621, -1.54175233366043, -1.909087068272)), class = "data.frame", row.names = c(NA,
-5L))
初学者问题:重命名数据框列中的变量观察的简单方法是什么?
我有一个数据框“Stuff”,其中有一列名为“Age”的分类数据,其中一个数据变量称为“Age80+”。我了解到 R 不喜欢名称中的“+”,
例如80 岁以上 <- 出现错误
在“年龄”列中还有 7 个其他变量数字,例如“Age18_30”所以我无法有效地手动更改观察名称。
我已经看过,但我没有找到一种简单的方法来将所有“Age80+”重命名为“Age80plus”,而无需引入像“stringer”或“dplyr”这样的复杂包。数据框有 100 个“Age80+”观察值。
谢谢
我试过了
Stuff$Age<- gsub("Age80+", "Age80plus", Stuff$Age)
但这会将“Age80+”更改为“Age80plus+”而不是“Age80plus”
更改留下“+”
+
是一个特殊字符,也称为正则表达式,如果您想要实际字符,可以转义 \+
。
dat <- transform(dat, age=gsub('Age80\+', 'Age80plus', age))
dat
# id age x
# 1 1 Age80plus -0.9701187
# 2 2 Age80plus -0.5522213
# 3 3 Age80plus -1.6060125
# 4 4 Age60 -1.5417523
# 5 5 Age40 -1.9090871
数据:
dat <- structure(list(id = 1:5, age = c("Age80+", "Age80+", "Age80+",
"Age60", "Age40"), x = c(-0.970118672988532, -0.552221336521097,
-1.60601248510621, -1.54175233366043, -1.909087068272)), class = "data.frame", row.names = c(NA,
-5L))