簡體   English   中英

Python過濾多行

[英]Python Filter multiple row

我正在使用此查詢腳本從api rest獲取數據。

腳本

完成此操作后,我得到了以下數據:

數據幀

我是python的新手,我很難理解如何選擇列:

我嘗試了以下代碼,但出現了:

df1 = df[(df['Meses'] != 'Total') & (df['Orcado x Realizado'] == 'Realizado')]

KeyError: 'Meses'

資料問題

您有2個過濾MultiIndex數據框的選項:

1.將索引提升到列並按列過濾

df = df.reset_index()
df1 = df[(df['Meses'] != 'Total') & (df['Orcado x Realizado'] == 'Realizado')]

2.直接按索引過濾

df1 = df[(df.index.get_level_values('Meses') != 'Total') &
         (df.index.get_level_values('Orcado x Realizado') == 'Realizado')]

reset_index()將做

>>> df.reset_index()["Meses"]

您正在使用的代碼( link )設置多索引和一列

index = pd.MultiIndex.from_tuples(keylist, names=dimension_names)
... 
df = pd.DataFrame(values, index=index, columns=["Values"])

只需將索引重置為平坦的df

暫無
暫無

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

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