【发布时间】:2016-07-13 22:11:35
【问题描述】:
我有一个包含五位和九位数字代码的邮政编码向量。我想从长度超过五的代码中删除结尾数字。
例如以下代码:
zip<-c(11566, 46235, 50467, 856073217, 97333, 856159229)
应该变成
zip
11566
46235
50467
85607
97333
85615
我认为 gsub 将是解决此问题的好方法,但我不知道如何为其编写代码。我试过了,但肯定不行。
df$zip<- gsub("\\d(!i:5)", "", as.character(df$zip))
【问题讨论】:
-
您将输入转换为字符,这很好 - 我不知道您的真实数据属于哪个类别,但请注意使用
numeric或integer邮政编码数据 - 许多邮政编码开始带有0,如果您转换为数字数据类型,它将被删除。