我有以下的數據幀:含義在pd.DataFrame.all
>>> df = pd.DataFrame([[True, np.nan, False],[True,np.nan,False],[True,np.nan,False]])
>>> df
0 1 2
0 True NaN False
1 True NaN False
2 True NaN False
按照docs,做df.all(axis=1, skipna=True)
對應於檢查是否所有的值都爲真逐列,所以預期它給予True
,True
,False
,但它給出了False
,False
,False
。似乎軸的含義已被翻轉,即axis = 0是針對列的。
這似乎與軸的在DataFrame.dropna
的含義,例如矛盾,
>>> df.dropna(axis=1)
0 2
0 True False
1 True False
2 True False
以及在np.delete
。
這是故意的嗎?如果是這樣,爲什麼?
這看起來像在文檔中的錯誤(可能是一個bug)有一個相關的問題:http://stackoverflow.com/questions/25773245/ambiguity-in-pandas-dataframe-axis-definition?rq=1關於軸的含義的明顯切換,這是由於numpy,比較你嘗試'np.all(df,axis = 0)'和'np.all(df,axis = 1)時發生的情況'輸出是和熊貓一樣 – EdChum 2014-10-10 09:19:21