python - 当 dtype 为 dtype ('O' 时,pandas 系列 idxmax() 失败)

标签 python python-3.x pandas

我相信最近版本的更改会导致对 idxmax() 的调用在以前可以工作的情况下失败。我并不是说这是一种回归,我只是试图理解原因和正确的问题调用。

type(sss)
<class 'pandas.core.series.Series'>
sss.dtype
dtype('O')
type(sss.index)
<class 'pandas.core.indexes.base.Index'>
sss.index=Index([...strings.., dtype'object', length=112)

该系列中的单列具有包含许多 NaN 的数字类型,以及一些有效数字。 所有索引都是字符串。 我正在搜索列最大值的索引。

我怎样才能获得它?

最佳答案

我无法在 pandas 0.19.2 上复制。您可以转换为float,然后使用pd.Series.idxmax:

df = pd.DataFrame({'A': [0, 1.5, 1.0, np.nan, np.nan, 54, 19, np.nan]}, dtype=object,
                  index=list('abcdefgh'))

res = df['A'].astype(float).idxmax()  # 'f'

关于python - 当 dtype 为 dtype ('O' 时,pandas 系列 idxmax() 失败),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49759346/

相关文章:

python - 动态添加 Pandas 数据框中的列

Python 连接两列但保持固定长度

python - 通过xpath查找元素并点击它

python - 将文件从 ZIP 直接提取到另一个 ZIP

python - Pandas groupby 多列、计数和重新采样

python - 添加不属于模型的自定义表单字段 (Django)

python - 在 PEP 3141 中,为什么 Number 没有 add 方法?

python - Airflow PythonVirtualenvOperator,没有那个文件或目录 : 'virtualenv'

python - Django 。如何编辑并保存 json 文件中的更改?

python - pandas Dataframe 上的条件搜索