如何在R语言中将带mm的雨量数据转换为纯数字格式?
批量去除降雨量列中的"mm"后缀并保留数字
以下是两种常用的批量处理方案,适配不同工具场景:
Python(Pandas)处理方案
针对大规模数据集,用Pandas处理效率最高:
import pandas as pd # 读取数据集(根据实际格式调整,xlsx文件用pd.read_excel) df = pd.read_csv('weather_data.csv') # 方法1:直接替换"mm"为空字符串,转为整数类型 df['Rain'] = df['Rain'].str.replace('mm', '', regex=False).astype(int) # 方法2:提取字符串中的数字(兼容带空格、其他冗余字符的情况) # df['Rain'] = df['Rain'].str.extract('(\d+)').astype(int) # 保存清洗后的数据集 df.to_csv('cleaned_weather_data.csv', index=False)
- 方法1适合确定仅存在"mm"后缀的场景,处理速度更快;
- 方法2通过正则提取数字,能应对
10mm(带空格)这类特殊格式。
Excel处理方案
如果习惯用Excel操作,可选择以下两种方式:
方式1:查找替换(最简操作)
- 选中Rain列全部数据;
- 按下
Ctrl+H打开查找替换窗口; - 「查找内容」输入
mm,「替换为」留空; - 点击「全部替换」完成批量清洗。
方式2:公式处理(兼容异常格式)
若存在其他异常格式,在相邻空白列(如C列)输入公式:
=IFERROR(VALUE(SUBSTITUTE(B2,"mm","")), B2)
- 下拉填充公式至所有行;
- 选中C列右键「复制」,再选中Rain列右键「粘贴为数值」;
- 删除辅助的C列即可。
内容的提问来源于stack exchange,提问作者Rebecka
相关产品推荐
相关产品推荐

