簡體   English   中英

熊貓iloc和loc索引錯誤

[英]Pandas iloc and loc error of index

我正在嘗試從Pandas矩陣中選擇特定的行,並獲取行標題為1的列標題。例如,對於行GAO(以CSV格式),它在4個標題下有1個“新聞稿”,“聲明”,“政策摘要” “,”白皮書“(您看不到最后2個標題)。 所以我想將這些標題保存在List變量下。

在此處輸入圖片說明 這是我正在使用的代碼

def csvTomatrix():

    matrixData = pd.read_csv("contentParameter.csv",index_col=[0])
    print(type(matrixData))
    print (matrixData.loc["CRS"])

這是CSV文件

注意:我正在使用python3.6。

您沒有告訴pandas第一列是索引,請嘗試

matrixData = pd.read_csv("contentParameter.csv", index_col=[0])

要么

matrixData = pd.read_csv("contentParameter.csv", index_col='Source\Content')

默認情況下,它會自動為您生成一個。

loc使用基於label的索引,而iloc使用基於位置的索引。

由於標簽'CRS'不存在,則matrixData.loc["CRS"]提出了KeyError ,如果你做matrixData.iloc[0]那這就是返回的第一行

要回答您的最后一個問題,您可以生成一個布爾掩碼,這些掩碼滿足條件以針對列進行掩碼。 因此,假設'Source/Content'現在是索引:

df.loc['GAO'] == 1.0

將生成一個布爾掩碼,我們可以使用它對列進行掩碼:

df.columns[df.loc['GAO'] == 1.0]

暫無
暫無

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

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