You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas操作DataFrame时sous_nutrition列乘1e6结果异常如何解决

问题原因

sous_nutrition列的数据类型为字符串(object)类型,直接执行乘法操作会被识别为字符串重复拼接,而非数值运算,因此得到的结果不符合预期。

解决方案

按如下步骤操作即可完成单位换算:

  1. 先验证列的数据类型,确认是否为非数值类型:
print(proportion_sous_nutrition_2017['sous_nutrition'].dtype)
  1. 将该列转换为数值类型,无法转换的异常值会被标记为NaN:
import pandas as pd
proportion_sous_nutrition_2017['sous_nutrition'] = pd.to_numeric(
    proportion_sous_nutrition_2017['sous_nutrition'], 
    errors='coerce'
)
  1. 按需处理空值(可选,可根据业务需求调整,比如填充0或者删除空行):
# 示例:空值填充为0
proportion_sous_nutrition_2017['sous_nutrition'] = proportion_sous_nutrition_2017['sous_nutrition'].fillna(0)
  1. 执行单位换算:
proportion_sous_nutrition_2017['sous_nutrition'] = proportion_sous_nutrition_2017['sous_nutrition'] * 10**6

内容的提问来源于stack exchange,提问作者Moonlight

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:12:04