簡體   English   中英

在 pandas 中,[list] 和 [[list]] 有什么區別?

[英]In pandas, what is the difference between [list] and [[list]]?

如果這個問題已經得到解答,我很抱歉,但我真的不知道其中任何一個的不同名稱(對象或列表或數組?),所以我仍然感到困惑。

我只是好奇這個問題的后續行動。

Pandas:在嘗試合並數據幀時出現“TypeError:只有 integer 標量 arrays 可以轉換為標量索引”

以及伊利亞斯的回答。

為什么[[list]]導致錯誤

只有 integer 標量 arrays 可以轉換為標量索引

但是[list]沒有?

您在鏈接問題中談到的相關代碼是:

df1 = pd.DataFrame({'a': [1, 2]})
df2 = pd.DataFrame({'b': [3, 1]})

df1.columns = [['b']] # WRONG
df1.columns = ['b']   # CORRECT

df1.merge(df2, on='b')

df.columns必須是列標簽列表1 ,每個標簽代表一列的名稱。 在錯誤的版本中,您將其設置為一個元素列表,其元素本身就是一個列表(不是字符串),因此是錯誤的。


1列標簽直接來自DataFrame.columns的文檔,字符串是一種有效值(盡管不是唯一的,請參閱下面的注釋)。 另一方面,列表會生成一個 MultiIndex(在“錯誤”版本之后嘗試print (df1.columns) ),這會導致稍后在調用merge時出現問題。

暫無
暫無

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

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