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

如何在Pandas中获取object类型Series最小值索引+1?遇类型错误求助

解决方法

问题出在你的Series是object dtype,这类数据无法直接执行argmin()/idxmin()这类数值计算操作,先把数据转成数值类型就能解决。

具体操作步骤:

  • 第一步:将Series转换为浮点型
    使用pd.to_numeric()方法把object类型的Series转为数值类型,代码示例:
    import pandas as pd
    
    # 假设你的Series变量名为s
    s = pd.Series(['0.0149', '0.00088', '0.00322', '0.00357', '0.0101'], dtype='object')
    s_numeric = pd.to_numeric(s)
    
  • 第二步:获取最小值索引并加1
    转换完成后,就可以正常用idxmin()拿到最小值的索引,再加1得到预期结果:
    result = s_numeric.idxmin() + 1
    print(result)  # 输出2,符合预期
    

报错原因说明:

object dtype的Series可能包含字符串、混合类型数据,pandas无法直接对这类数据执行数值类的聚合或查找操作,必须先统一转为数值类型才能进行相关计算。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 12:01:05