Pandas如何将字典对应列表列的数据类型转换为float64
转换为float64的实现方法
方法1:直接使用astype转换
如果你的Team-A/Team-B/Team-C列的字符串内容均为合法数值格式,直接复用你之前转string的写法,修改目标类型即可:
df = df.astype({'Team-A': 'float64', 'Team-B': 'float64', 'Team-C': 'float64'}, errors='raise')
设置errors='raise'时如果遇到无法转换的内容会直接抛出异常,适合数据质量高、要求严格校验转换结果的场景。
方法2:使用pd.to_numeric处理(兼容异常值场景)
如果数据中可能存在非数值格式的异常字符串,推荐用pd.to_numeric处理,可灵活控制异常值逻辑:
# 指定要转换的列 target_cols = ['Team-A', 'Team-B', 'Team-C'] # errors='coerce' 表示无法转换的内容会被置为NaN df[target_cols] = df[target_cols].apply(pd.to_numeric, errors='coerce').astype('float64')
如果你不需要强制转换异常值,也可以把errors参数改为'ignore',遇到无法转换的内容会直接保留原始值不做处理。
内容的提问来源于stack exchange,提问作者KateMac
相关产品推荐
相关产品推荐

