數據分析流程
-
數據理解
分析數據集基本結構(前/后10行)
知識點:
Pandas庫:df.head(10), df.tail(10)
數據框結構:理解什么是行(樣本)、列(特征/變量)。
識別變量類型:
數據類型:
數值型:
連續型:可在一定范圍內取任意值(如身高、溫度)。
離散型:只能取整數(如人數、物品數量)。
類別型:
定類型:無順序的類別(如性別、城市)。
定序型:有順序的類別(如評分等級:高、中、低)。
Pandas操作:df.dtypes(查看數據類型),df.info()(更全面的信息),df['column'].unique()(查看唯一值),df.describe()(數值型描述統計),df.describe(include='object')(類別型描述統計)。 -
數據清洗
缺失值處理:
識別缺失值:df.isnull().sum()
處理策略: -
刪除:df.dropna()(適用于缺失量少,或該行/列不重要時)
-
填充:
統計量填充:用均值、中位數(數值型)、眾數(類別型)填充。df.fillna()
模型預測填充:使用KNN、回歸等模型預測缺失值(更復雜,但更科學)。
前后值填充:df.fillna(method='ffill'或'bfill')(適用于時間序列數據) -
數據整理
數據集轉化:
特征工程:創建新特征(如從日期中提取“月份”、“星期幾”)。
類型轉換:將類別變量轉換為數值(如pd.get_dummies()進行獨熱編碼)。
數據合并:pd.concat(), pd.merge()
數據標準化:
目的:消除不同特征量綱和數值范圍差異對模型的影響。
方法:
Z-score標準化:(x - mean) / std,使數據均值為0,標準差為1。from sklearn.preprocessing import StandardScaler
Min-Max歸一化:(x - min) / (max - min),將數據縮放到[0, 1]區間。from sklearn.preprocessing import MinMaxScaler
3.數據集分割
目的:評估模型在未見過的數據上的性能,防止過擬合。
方法:from sklearn.model_selection import train_test_split
操作:X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)
- 數據分析
核心目標:通過統計和可視化深入探索數據內在規律。
探索性數據分析
可視化庫:matplotlib, seaborn
常用圖表:
單變量分析:直方圖、箱線圖(查看分布、異常值)。
雙變量分析:散點圖(查看關系)、熱力圖(查看相關性)。
描述性數據分析
統計量:
集中趨勢:均值、中位數、眾數。
離散程度:標準差、方差、四分位距。
分布形態:偏度、峰度。
5.回歸預測分析
回歸預測
算法:
線性回歸:from sklearn.linear_model import LinearRegression
決策樹回歸:from sklearn.tree import DecisionTreeRegressor
隨機森林回歸:from sklearn.ensemble import RandomForestRegressor
分析模型可靠性 & 誤差分析
評估指標:
均方誤差:from sklearn.metrics import mean_squared_error
平均絕對誤差:from sklearn.metrics import mean_absolute_error
R2決定系數:from sklearn.metrics import r2_score
殘差分析:繪制殘差圖(預測值 vs 殘差),理想情況應隨機分布在0附近。
模型參數檢驗
線性回歸:檢查系數及其p-value,判斷特征是否顯著。
樹模型:查看特征重要性 model.feature_importances_
報告回歸結果:
匯總并解釋模型系數、截距、評估指標、顯著性等。
6.數據可視化
產生并輸出表格:
Pandas DataFrame的格式化輸出,使用.to_excel()或.to_csv()導出。
產生并輸出圖形:
柱狀圖/條形圖:plt.bar(),用于比較不同類別的數值。
餅圖:plt.pie(),用于顯示組成部分占比。
散點圖:plt.scatter(),用于展示兩個變量之間的關系。
箱線圖:sns.boxplot(),用于展示數據分布和異常值。

浙公網安備 33010602011771號