目的:
我有一个包含许多贷款处理数据的数据集(数据集:df)。我需要将“状态”字段中的字符串更改为数字数据。目标是将字符串叙述更改为数值。我希望将此状态用作 lm() 方法中的响应变量。
以下是已完成的工作:
df$status <- df$status %>%
mutate(status = str_replace("Charged On", "100"))
df$status <- df$status %>%
mutate(status = str_replace("Charged Off", "200"))
df$status <- df$status %>%
mutate(status = str_replace("Fully Paid", "300"))
df$status <- df$status %>%
mutate(status = str_replace("Current", "400"))
df$status <- df$status %>%
mutate(status = str_replace("In Grace Period", "500"))
Run Code Online (Sandbox Code Playgroud)
我建议使用case_when此处生成一个新的数字列:
df$status <- case_when(
df$status == "Charged On" ~ 100,
df$status == "Charged Off" ~ 200,
df$status == "Fully Paid" ~ 300,
df$status == "Current" ~ 400,
df$status == "In Grace Period" ~ 500,
TRUE ~ -1
)
Run Code Online (Sandbox Code Playgroud)