【发布时间】:2021-12-09 13:39:08
【问题描述】:
我正在尝试使用以下列清理数据集:ltaCpInfoDF$weekdays_rate_1
对于某些行,我想这样做:
输入: 每日(早上 7 点至晚上 11 点):1.20 美元; 输出:上午 7 点至晚上 11 点:1.20 美元
括号内的值可以是行的不同时间。
最初,我正在考虑按部分删除,例如先使用 gsub 删除“Daily(”,然后删除“)”。但是,我似乎遇到了问题。
ltaCpInfoDF$weekdays_rate_1 <- gsub("Daily(", "", ltaCpInfoDF$weekdays_rate_1)
这是显示的错误:
Error in gsub("Daily(", "", ltaCpInfoDF$weekdays_rate_1) :
invalid regular expression 'Daily(', reason 'Missing ')''
In addition: Warning message:
In gsub("Daily(", "", ltaCpInfoDF$weekdays_rate_1) :
TRE pattern compilation error 'Missing ')''
有人可以和我分享一个更好的方法吗?提前谢谢!
【问题讨论】:
-
您需要了解正则表达式模式中的某些字符需要转义
-
您在寻找
ltaCpInfoDF$weekdays_rate_1 <- gsub("Daily\\(", "", ltaCpInfoDF$weekdays_rate_1)吗?我认为即使使用sub也应该这样做。