首页 > 解决方案 > 如何删除数字列中的倒数第二个 0?

问题描述

在数据框 df1 的数字列 old_code 中,我的整数具有以下结构:

    head(df1$old_code)
    [1] 12101 18201 13202 11301 13302 10401

在 new_code 列中,我想要完全相同的整数,减去倒数第二个 0(即 12101,我希望将其视为 1011,将 18201 视为 1021)。我很肯定这可以使用正则表达式解决,但我无法破解代码。

感谢您的帮助!

标签: rregex

解决方案


您可以尝试使用gsub

gsub("(.*)0(.)$", "\\1\\2", df$old_code)
# [1] "1211" "1821" "1322" "1131" "1332" "1041"

推荐阅读