如何纠正 R 列中的拼写错误?

问题描述 投票:0回答:1

这里是新手。

我正在尝试清理 R 中的数据集,但发现邮政编码是 9306 而不是 93060。 我用谷歌搜索并阅读了许多教程,但没有一个更新数据框。该数据集中有 2,000 多个观察值。 我已经将邮政编码列的数据类型从数字更改为字符。

听起来这应该可行吗?数据集是clean_transport_2022,Project_Zip是邮政编码列表。

gsub('9306' '93060', clean_transport_2022$Project_Zip)

我确实看到有一个可以专门安装用于处理邮政编码的软件包,但出于我的目的,我实际上只需要替换这一位数据。

提前谢谢您!

r data-cleaning error-correction
1个回答
0
投票

您的 gsub 代码确实用 93060 替换了 9306;然而,由于您是 R 新手,我猜您犯了一个错误,几乎每个刚开始使用 R 的人都会犯这个错误,并且忘记将结果分配给数据。

也就是说,你忘了做

clean_transport_2022$Project_Zip <- gsub('9306' '93060', clean_transport_2022$Project_Zip)
# ^^^^^^^ This part ^^^^^^^^^^^^

如果你只是写了上面赋值操作的RHS,你要求R取出

Project_Zip
列的内容,用93060替换9306,然后返回这个新对象(不修改原始数据框)

我注意到您将列从数字更改为字符。如果您使用

gsub
,这是足够公平的,但对于此特定任务来说,这不是必需的。如果您将列保留为数字,则只需使用
ifelse

clean_transport_2022$Project_Zip <- ifelse(clean_transport_2022$Project_Zip == 9306, 93060, clean_transport_2022$Project_Zip)
© www.soinside.com 2019 - 2024. All rights reserved.