首頁 後端開發 Python教學 如何預處理資料集

如何預處理資料集

Jul 30, 2024 pm 06:03 PM

How to preprocess your Dataset

簡介

泰坦尼克號資料集是資料科學和機器學習專案中使用的經典資料集。它包含有關泰坦尼克號乘客的信息,目標通常是預測哪些乘客在災難中倖存下來。在建立任何預測模型之前,預處理資料以確保資料乾淨且適合分析至關重要。這篇部落格文章將引導您完成使用 Python 預處理泰坦尼克號資料集的基本步驟。

第 1 步:載入資料

任何資料分析專案的第一步都是載入資料集。我們使用 pandas 函式庫讀取包含泰坦尼克號資料的 CSV 檔案。此資料集包括姓名、年齡、性別、機票、票價以及乘客是否倖存(Survived)等特徵。

import pandas as pd
import numpy as np
登入後複製

載入泰坦尼克號資料集

titanic = pd.read_csv('titanic.csv')
titanic.head()

登入後複製

了解數據

資料集包含以下與泰坦尼克號乘客相關的變數:

  • 生存:表示乘客是否倖存。

    • 0 = 否
    • 1 = 是
  • Pclass:乘客的機票艙位。

    • 1 = 一等
    • 2 = 二等
    • 3 = 三等
  • 性別:乘客的性別。

  • 年齡:乘客的年齡(以歲為單位)。

  • SibSp:泰坦尼克號上的兄弟姊妹或配偶數量。

  • Parch:泰坦尼克號上的父母或兒童人數。

  • :票號。

  • 票價:客運票價。

  • 客艙:客艙編號。

  • 登船:登船港。

    • C = 瑟堡
    • Q = 皇后鎮
    • S = 南安普敦

第 2 步:探索性資料分析 (EDA)

探索性資料分析 (EDA) 涉及檢查資料集以了解其結構以及不同變數之間的關係。此步驟有助於識別資料中的任何模式、趨勢或異常。

資料集概述

我們首先顯示資料集的前幾行並取得統計資訊摘要。這讓我們了解資料類型、值的範圍以及是否存在任何缺失值。

# Display the first few rows
print(titanic.head())

# Summary statistics
print(titanic.describe(include='all'))
登入後複製

第三步:資料清理

資料清理是處理缺失值、更正資料類型和消除任何不一致的過程。在泰坦尼克號資料集中,Age、Cabin 和 Embarked 等特徵存在缺失值。

處理缺失值

為了處理缺失值,我們可以用適當的值填充它們或刪除缺失資料的行/列。例如,我們可以用年齡中位數填滿缺少的 Age 值,並刪除缺少 Embarked 值的行。

# Fill missing age values with the mode
titanic['Age'].fillna(titanic['Age'].mode(), inplace=True)

# Drop rows with missing 'Embarked' values
titanic.dropna(subset=['Embarked'], inplace=True)

# Check remaining missing values
print(titanic.isnull().sum())
登入後複製

第四步:特徵工程

特徵工程涉及改造現有特徵以提高模型性能。此步驟可以包括對分類變數進行編碼以縮放數值特徵。

編碼分類變數

機器學習演算法需要數值輸入,因此我們需要將分類特徵轉換為數值特徵。我們可以對 Sex 和 Embarked 等功能使用 one-hot 編碼。

# Convert categorical features to numerical
from sklearn import preprocessing
le = preprocessing.LabelEncoder()

#fit the required column to be transformed
le.fit(df['Sex'])
df['Sex'] = le.transform(df['Sex'])
登入後複製

結論

預處理是任何資料科學專案中的關鍵步驟。在這篇文章中,我們介紹了載入資料、執行探索性資料分析、清理資料和特徵工程的基本步驟。這些步驟有助於確保我們的資料已準備好進行分析或模型建置。下一步是使用這些預處理的數據來建立預測模型並評估其性能。如需進一步了解,請查看我的 Colab 筆記本

透過遵循這些步驟,初學者可以在資料預處理方面打下堅實的基礎,為更進階的資料分析和機器學習任務奠定基礎。快樂編碼!

以上是如何預處理資料集的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

我如何使用美麗的湯來解析HTML? 我如何使用美麗的湯來解析HTML? Mar 10, 2025 pm 06:54 PM

我如何使用美麗的湯來解析HTML?

python中的圖像過濾 python中的圖像過濾 Mar 03, 2025 am 09:44 AM

python中的圖像過濾

如何使用Python查找文本文件的ZIPF分佈 如何使用Python查找文本文件的ZIPF分佈 Mar 05, 2025 am 09:58 AM

如何使用Python查找文本文件的ZIPF分佈

如何使用Python使用PDF文檔 如何使用Python使用PDF文檔 Mar 02, 2025 am 09:54 AM

如何使用Python使用PDF文檔

如何在django應用程序中使用redis緩存 如何在django應用程序中使用redis緩存 Mar 02, 2025 am 10:10 AM

如何在django應用程序中使用redis緩存

如何使用TensorFlow或Pytorch進行深度學習? 如何使用TensorFlow或Pytorch進行深度學習? Mar 10, 2025 pm 06:52 PM

如何使用TensorFlow或Pytorch進行深度學習?

python對象的序列化和避難所化:第1部分 python對象的序列化和避難所化:第1部分 Mar 08, 2025 am 09:39 AM

python對象的序列化和避難所化:第1部分

如何在Python中實現自己的數據結構 如何在Python中實現自己的數據結構 Mar 03, 2025 am 09:28 AM

如何在Python中實現自己的數據結構

See all articles