这里是新手。
我正在尝试清理 R 中的数据集,但发现邮政编码是 9306 而不是 93060。 我用谷歌搜索并阅读了许多教程,但没有一个更新数据框。该数据集中有 2,000 多个观察值。 我已经将邮政编码列的数据类型从数字更改为字符。
听起来这应该可行吗?数据集是clean_transport_2022,Project_Zip是邮政编码列表。
gsub('9306' '93060', clean_transport_2022$Project_Zip)
我确实看到有一个可以专门安装用于处理邮政编码的软件包,但出于我的目的,我实际上只需要替换这一位数据。
提前谢谢您!
您的 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)