【发布时间】:2021-05-25 22:27:55
【问题描述】:
我通过按两个值分组创建了一个 pandas DataFrame,并收到了一个类似于下面的表格:
| First Name | Column A |
|---|---|
| Samuel | [1,2,3] |
| Joshua | [4,5,6] |
| Richard | [7,8,9] |
| Michael | [7,8,9] |
| Henry | [7,8,9] |
接下来,我按 A 列分组,计算出每个数字列表有多少个唯一名字,并收到以下错误:
Exception ignored in: 'pandas._libs.index.IndexEngine._call_map_locations' Traceback (most recent call last): File "pandas\_libs\hashtable_class_helper.pxi", line 4588, in > pandas._libs.hashtable.PyObjectHashTable.map_locations TypeError: unhashable type: 'numpy.ndarray'
当我收到一个索引为 numpy 数组类型的熊猫系列时,我感到很困惑。为什么在这种情况下会忽略异常?
【问题讨论】:
-
将
column A转换为string。将其视为字符串而不是列表。这是黑客之一 -
或将它们设为元组。然后你可以分组
-
你用的是什么版本?
-
该错误暗示它试图使用字典或其他散列映射来创建组。但是
numpy数组不能用作dict键。它似乎已经发现了错误,将其显示出来,然后转向其他分组方法。
标签: python pandas numpy exception typeerror