Pandas常見困惑問題彙總

2021-08-15 03:58:01 字數 1305 閱讀 4259

原文請見:python pandas與numpy中axis引數的二義性

從例子入手:

>>>df = pd.dataframe([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]], \

columns=["col1", "col2", "col3", "col4"])

>>>df

col1 col2 col3 col4 01

1111

2222

2333

3>>> df.mean(axis=1)01

1223

>>> df.drop("col4", axis=1)

col1 col2 col301

1112

2223

33

df.mean(axis=1)其實是在每一行上取所有列的均值,而不是保留每一列的均值,簡單來說就是axis=0代表往跨行(down),而axis=1代表跨列(across)。

pandas保持了numpy對關鍵字axis的用法:

軸用來為超過一維的陣列定義的屬性,二維資料擁有兩個軸:第0軸沿著行的垂直往下,第1軸沿著列的方向水平延伸。

所以問題當中第乙個例子df.mean(axis=1)代表沿著列水平方向計算均值,而第二個列子df.drop(name, axis=1) 代表將name對應的列標籤沿著水平的方向依次刪掉。

下圖代表在dataframe當中axis為0和1時分別代表的含義:

pandas讀去csv檔案時,若csv檔名含有中文或者檔案路徑含有中文,則會報錯如下:

oserror: initializing from file failed
為了避免此種情況,一方面可以盡量保證使用英文命名,另一方面可以使用 open 方法先開啟檔案在使用 pandas.read_csv 方法讀取:

test = pd.read_csv(open("data/得分tips.csv"))
使用pandas實現資料****

pd.pivot_table(df,     //資料來源

index=["manager","status"], //行

values=["quantity","price"], //值

aggfunc=,fill_value=0) //不同值的透視方法

Oracle常見問題彙總

1 如果建立了多個oracle例項,那麼訪問em的時候預設訪問的是第乙個例項的,如何訪問第二個呢?看下這個檔案就會明白了 oracle home install portlist.ini enterprise manager console http 埠 shili1 1158 enterprise...

ab常見問題彙總

測試伺服器ab 被測試伺服器apache apache版本2.2.25 問題一 socket too many open files 24 解決 在測試伺服器操作 1 檢視當前系統設定 open files n 1024為1024 root localhost ulimit a core file ...

knn常見問題彙總

knn演算法又稱為k最近鄰 k nearest neighbor class ification 分類演算法。所謂的k最近鄰,就是指最接近的k個鄰居 資料 即每個樣本都可以由它的k個鄰居來表達。knn演算法的核心思想是,在乙個含未知樣本的空間,可以根據離這個樣本最鄰近的k個樣本的資料型別來確定樣本的...