簡體   English   中英

Pandas Dataframe 有一列包含“列表”數據結構作為條目。 如何對它們進行 Groupby()?

[英]Pandas Dataframe has a column that contains 'list' data-structure as entries. How to Groupby() them?

問題是:找出制作了平均 ROI(投資回報率)最高電影的前 3 名制片人

圖 1:表格上圖是我的表格。

---> 根據我的說法,這里一種可能的解決方案是在“生產者”列上使用.groupby() ,然后將 mean() 置於 ROI 列上。 然后按降序對它們進行排序。

我的代碼: table.groupby('Producers')[['Movie Title','ROI','Directors']].mean('ROI') (代碼參考圖 2)圖 2:我的代碼

但是當我嘗試這樣做時,出現以下錯誤

不可散列的類型:“列表”

(參考圖 4)圖 3圖 4:錯誤

有人幫我解決它!

Python TypeError: unhashable type: 'list' 通常意味着列表被用作 hash 參數。 當嘗試 hash 列表時會發生此錯誤,該列表是不可散列的 object。例如,使用列表作為 Python 字典中的鍵將導致此錯誤,因為字典只接受可散列數據類型作為鍵。

解決這個問題的標准方法是將列表轉換為元組,這是一種可散列的數據類型。

tuple()

function 用於將列表轉換為元組。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM