类型错误:不可散列的类型'series'/'numpy.ndarray'

问题描述 投票:0回答:1

我正在尝试使用seaborn 准备用于可视化的数据。 所以我需要获取多折线图的不同类型会话的数量。


session_cnt = df.groupby(df['EVENT_DATETIME'].dt.date, df['CUSTOMER_ID']).agg(session_count=('SESSION_ID', 'nunique'), app_session_cnt=('APP_SESSION_ID', 'nunique')).reset_index()

我得到了

TypeError: unhashable type 'series'

所以我就这么做了:

session_cnt = df.groupby(df['EVENT_DATETIME'].dt.date, df['CUSTOMER_ID'].values).agg(session_count=('SESSION_ID', 'nunique'), app_session_cnt=('APP_SESSION_ID', 'nunique')).reset_index()

但是得到了

TypeError: unhashable type 'numpy.ndarray'

我想了解使用 groupby 时要检查哪一列 并得到 TypeError,因为现在我只是猜测。 也许我需要阅读一篇关于该错误的好文章。

numpy types typeerror series
1个回答
0
投票

Groupby 获取列表:

session_cnt = (df.groupby([df['EVENT_DATETIME'].dt.date, df['CUSTOMER_ID']]) 
                 .agg(session_count=('SESSION_ID', 'nunique'), 
                      app_session_cnt=('APP_SESSION_ID', 'nunique'))
                 .reset_index()
)
© www.soinside.com 2019 - 2024. All rights reserved.