簡體   English   中英

如何在 pandas 的數據透視表中刪除一行?

[英]How do you remove a row in a pivot table in pandas?

我使用這段代碼在 pandas 中創建了一個樞軸:

table = pd.pivot_table(df, values='Value (millions)', index=['TierA', 'TierB'], aggfunc=['count',np.sum])

這給了我支點:

                      count               sum
                 Value (millions)   Value (millions)
TierA   TierB   
1        1             6                    400
2        0             0                     0
2        2             1                    300

在數據透視表中,如何刪除 [2,0,0,0] 行? 我嘗試了正常的:

table = table.drop(['TierA','TierB','count','sum'], axis =0)

它沒有用,也沒有這個: table = table.drop(['TierA','TierB','Value (millions)'], axis =0)

我正在嘗試做的事情可能嗎? 如果是這樣,我會怎么做?

謝謝

這取決於您為什么要刪除該行。

如果是因為它的索引是(2,0),那么寫table.drop(index = (2,0))table.drop(index = 0, level = 1)

如果是因為有些值是0,那么寫table.loc[~(table.count == 0)]或者table.loc[~(table.sum == 0)]

我發現使用~在布爾條件之前使用.loc來刪除要刪除的內容的倒數通常更方便,而不是刪除行。

您的pivot_table有一個 MultiIndex 並且您必須傳遞一個元組才能刪除該行。 嘗試

table = table.drop((2, 0), axis = 0)

暫無
暫無

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

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