作者:愛德寶器
來源:資料管道(ID:adc9556)
本文將這20個Pandas程式碼分成三類:
-
基本資料資訊
-
基本資料處理
-
操作Data frames
01 基本資料資訊
1. 基本讀寫資料集(CSV、Execl)
# csv
# 讀
pd.DataFrame.from_csv(“csv_file”)
pd.read_csv(“csv_file”)
# 寫
df.to_csv("data.csv", sep=",", index=False) # 逗號分隔,沒有下標
# execl
pd.read_excel("excel_file")
df.to_execl("data.xlsx",sheet_name='a')
2. 基本資料集特徵
df.info()
3. 基本資料統計
df.describe()
4. 將data frames輸出到一張表裡(tabulate模組)
from tabulate import tabulate
print(tabulate(print_table, essay-headers=essay-headers))
# print_table 為包含串列的串列
# essay-headers 為表頭所包含的欄位
5. 列出所有的欄位
df.columns
6. 得到前後n行
df.head(n) #前n行
df.tail(n) #後n行
7. 透過特徵、位置定位資料
df.loc[feature_name]
#選擇“size”列的第一行
df.loc([0], ['size'])
df.iloc[n] # 位置
02 基本資料處理
8. 去除缺失值
df.dropna(axis=0, how='any')
9. 替換缺失值
df.replace(to_replace=None, value=None)
# 將“to_replace”中的值替換為“value”
10. 檢查缺失值
pd.isnull(object)
# 檢測缺失值(數值陣列中的NaN,物件陣列中的None/NaN)
11. 刪除一個欄位
df.drop('feature_variable_name', axis=1)
# 軸對於行是0,對於列是1
12. 將物件型別轉換為數值
pd.to_numeric(df["feature_name"], errors='coerce')
# 將物件型別轉換為numeric以便能夠執行計算(如果它們是字串)
13. 將Dataframe轉換為numpy陣列
df.as_matrix()
03 操作Data frames
14. 將函式應用於dataframe
# 這個將把資料的“height”列中的所有值乘以2
df["height"].apply(lambda height: 2 * height)
def multiply(x):
return x * 2
df["height"].apply(multiply)
15. 從命名一列
# 這裡,將把資料的第三列重新命名為“size”
df.rename(columns = {df.columns[2]:'size'}, inplace=True)
16. 獲取某列的唯一項
# 這裡將得到列“name”的唯一條目
df["name"].unique()
17. 多級訪問
# 在這裡,將從資料中獲取列的選擇,“name”和“size”
new_df = df[["name", "size"]]
18. 資料的一些統計量 df.sum()
df.min()
df.max()
df.idxmin()
df.idxmax() #傳回最大值索引
df.mean()
df.median()
df.corr() # 不同列之間的相關係數
df["size"].median
19. 資料排序
df.sort_values(ascending = False)
20. 布林索引
df[df["size"] == 5] #布林型索引
部分參考:
https://towardsdatascience.com/23-great-pandas-codes-for-data-scientists-cca5ed9d8a38
朋友會在“發現-看一看”看到你“在看”的內容