圖片來源:(https://www.dcard.tw/f/girlslove/p/239241530)
圖片來源:pandas
是 Python 一個強大資料分析庫,提供高性能、使用資料結構和資料分析工具。特別擅長處理表格型資料,類似於 Excel,但功能更加強大且靈活
Series
一維標籤陣列,類似 NumPy 一維陣列,但具有索引功能
DataFrame
二維標籤陣列,類似於一個表格,由多個 Series 組成
基本用法
import pandas as pd
# 創建 Series
data = [1, 2, 3, 4, 5]
s = pd.Series(data)
print(s)
# 創建 DataFrame
data = {'Column1': [1, 2, 3], 'Column2': [4, 5, 6]}
df = pd.DataFrame(data)
print(df)
讀取資料
# 讀取 CSV 檔案
df = pd.read_csv('data.csv')
# 讀取 Excel 檔案
df = pd.read_excel('data.xlsx')
資料探索
# 查看前幾行
print(df.head())
# 查看後幾行
print(df.tail())
# 查看資料資訊
print(df.info())
# 查看統計摘要
print(df.describe())
資料選取
# 選取單一欄位
print(df['Column1'])
# 選取多個欄位
print(df[['Column1', 'Column2']])
# 使用 loc 和 iloc 選取資料
print(df.loc[0:2, 'Column1']) # 選取前三行的 'Column1'
print(df.iloc[0:2, 0]) # 選取前兩行的第一列
資料處理
# 刪除重複值
df = df.drop_duplicates()
# 填充缺失值
df.fillna(0, inplace=True)
# 根據條件篩選資料
df_filtered = df[df['Column1'] > 2]
# 分組聚合
grouped = df.groupby('Column1').mean()
資料操作
# 新增欄位
df['NewColumn'] = df['Column1'] * 2
# 排序
df.sort_values(by='Column1', ascending=False, inplace=True)
# 合併 DataFrame
df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'A': [5, 6], 'C': [7, 8]})
merged_df = pd.merge(df1, df2, on='A', how='outer')
視覺化
import matplotlib.pyplot as plt
# 畫出直方圖
df['Column1'].hist()
plt.show()
# 畫出散佈圖
df.plot.scatter(x='Column1', y='Column2')
plt.show()
時間序列分析
: Pandas提供強大時間序列處理功能資料清洗
: 處理缺失值、異常值、重複值資料轉換
: 將資料轉換為不同的格式機器學習
: Pandas 與 scikit-learn 機器學習庫無縫整合Pandas 是 Python 資料分析的基礎工具,它的易用性和功能性成為數據科學家和分析師首選。這篇只介紹 Pandas 基本用法,更多功能和細節下一篇會說明