使用gsub处理时保留全列:如何清理LonGB数据集Street列并保留完整数据
解决方案
你只需要把gsub处理后的结果重新赋值回原数据框的Street列,就能保留所有列的同时更新Street列的内容,具体代码如下:
直接修改原数据集
LonGB$Street <- gsub("\\s*\\([^\\)]+\\)","",as.character(LonGB$Street))
执行这段代码后,LonGB数据框里的Street列会被清理后的内容替换,其他列(Number、City、Av.Cost)保持不变。
创建新的干净数据集(不修改原数据)
如果不想改动原始数据,可以复制一份原数据框再修改:
# 复制原数据集 LonGB_cleaned <- LonGB # 更新新数据集中的Street列 LonGB_cleaned$Street <- gsub("\\s*\\([^\\)]+\\)","",as.character(LonGB_cleaned$Street))
这样原LonGB数据保持原样,新的LonGB_cleaned就是处理好的完整数据集。
内容的提问来源于stack exchange,提问作者Anne Soled
相关产品推荐
相关产品推荐

