
- Python Pandas 教程
- Python Pandas - 首頁
- Python Pandas - 簡介
- Python Pandas - 環境搭建
- Python Pandas - 基礎
- Python Pandas - 資料結構介紹
- Python Pandas - 索引物件
- Python Pandas - Panel (面板)
- Python Pandas - 基本功能
- Python Pandas - 索引和資料選擇
- Python Pandas - Series (序列)
- Python Pandas - Series (序列)
- Python Pandas - Series 物件切片
- Python Pandas - Series 物件的屬性
- Python Pandas - Series 物件的算術運算
- Python Pandas - Series 物件轉換為其他物件
- Python Pandas - DataFrame (資料框)
- Python Pandas - DataFrame (資料框)
- Python Pandas - 訪問 DataFrame
- Python Pandas - DataFrame 物件切片
- Python Pandas - 修改 DataFrame
- Python Pandas - 從 DataFrame 中刪除行
- Python Pandas - DataFrame 的算術運算
- Python Pandas - I/O 工具
- Python Pandas - I/O 工具
- Python Pandas - 使用 CSV 格式
- Python Pandas - 讀取和寫入 JSON 檔案
- Python Pandas - 從 Excel 檔案讀取資料
- Python Pandas - 將資料寫入 Excel 檔案
- Python Pandas - 使用 HTML 資料
- Python Pandas - 剪貼簿
- Python Pandas - 使用 HDF5 格式
- Python Pandas - 與 SQL 的比較
- Python Pandas - 資料處理
- Python Pandas - 排序
- Python Pandas - 重新索引
- Python Pandas - 迭代
- Python Pandas - 級聯
- Python Pandas - 統計函式
- Python Pandas - 描述性統計
- Python Pandas - 使用文字資料
- Python Pandas - 函式應用
- Python Pandas - 選項和自定義
- Python Pandas - 視窗函式
- Python Pandas - 聚合
- Python Pandas - 合併/連線
- Python Pandas - 多級索引
- Python Pandas - 多級索引基礎
- Python Pandas - 使用多級索引進行索引
- Python Pandas - 使用多級索引進行高階重新索引
- Python Pandas - 重新命名多級索引標籤
- Python Pandas - 對多級索引排序
- Python Pandas - 二元運算
- Python Pandas - 二元比較運算
- Python Pandas - 布林索引
- Python Pandas - 布林掩碼
- Python Pandas - 資料重塑和透視
- Python Pandas - 透視表
- Python Pandas - 堆疊和解堆疊
- Python Pandas - 熔化
- Python Pandas - 計算虛擬變數
- Python Pandas - 分類資料
- Python Pandas - 分類資料
- Python Pandas - 分類資料的排序和排序
- Python Pandas - 比較分類資料
- Python Pandas - 處理缺失資料
- Python Pandas - 缺失資料
- Python Pandas - 填充缺失資料
- Python Pandas - 缺失值的插值
- Python Pandas - 刪除缺失資料
- Python Pandas - 使用缺失資料進行計算
- Python Pandas - 處理重複項
- Python Pandas - 重複資料
- Python Pandas - 計數和檢索唯一元素
- Python Pandas - 重複標籤
- Python Pandas - 分組和聚合
- Python Pandas - GroupBy
- Python Pandas - 時間序列資料
- Python Pandas - 日期功能
- Python Pandas - Timedelta (時間差)
- Python Pandas - 稀疏資料結構
- Python Pandas - 稀疏資料
- Python Pandas - 視覺化
- Python Pandas - 視覺化
- Python Pandas - 附加概念
- Python Pandas - 警告和陷阱
- Python Pandas 有用資源
- Python Pandas - 快速指南
- Python Pandas - 有用資源
- Python Pandas - 討論
Python Pandas - 資料結構介紹
Python Pandas 資料結構
Pandas 中的資料結構旨在高效地處理資料。它們允許以最佳化記憶體使用和計算效能的方式組織、儲存和修改資料。Python Pandas 庫提供兩種主要的資料結構用於處理和分析資料:
- Series (序列)
- DataFrame (資料框)
在一般的程式設計中,“資料結構”是指收集、組織和儲存資料以實現高效訪問和修改的方法。資料結構是資料型別的集合,它們提供以記憶體使用率為標準組織專案(值)的最佳方式。
Pandas 建立在 NumPy 之上,並與許多其他第三方庫很好地整合在科學計算環境中。本教程將詳細介紹這些資料結構。
Pandas 資料結構的維度和描述
資料結構 | 維度 | 描述 |
---|---|---|
Series (序列) | 1 | 一維帶標籤的同質陣列,大小不可變。 |
資料框 (Data Frames) | 2 | 二維帶標籤的、大小可變的表格結構,列的型別可能不同。 |
使用兩個或多個維度的陣列可能很複雜且耗時,因為使用者在編寫函式時需要仔細考慮資料的方向。但是,Pandas 透過減少所需的心智負擔簡化了此過程。例如,當處理表格資料 (DataFrame) 時,更容易從行和列的角度思考,而不是從軸 0 和軸 1 的角度思考。
Pandas 資料結構的可變性
所有 Pandas 資料結構都是值可變的,這意味著它們的內容可以更改。但是,它們的大小可變性各不相同:
- Series (序列) - 大小不可變。
- DataFrame (資料框) - 大小可變。
Series (序列)
Series 是一維帶標籤的陣列,可以儲存任何資料型別。它可以儲存整數、字串、浮點數等。Series 中的每個值都與一個標籤(索引)相關聯,該標籤可以是整數或字串。
姓名 | 史蒂夫 |
年齡 | 35 |
性別 | 男 |
評分 | 3.5 |
示例
考慮以下 Series,它是一組不同資料型別的集合
import pandas as pd data = ['Steve', '35', 'Male', '3.5'] series = pd.Series(data, index=['Name', 'Age', 'Gender', 'Rating']) print(series)
執行上述程式後,您將獲得以下輸出:
Name Steve Age 35 Gender Male Rating 3.5 dtype: object
關鍵點
以下是與 Pandas Series 相關的關鍵點。
- 同質資料
- 大小不可變
- 資料值可變
DataFrame (資料框)
DataFrame 是一個二維帶標籤的資料結構,其列可以包含不同型別的資料。它類似於資料庫中的表或電子表格。考慮以下資料,它表示銷售團隊的績效評分:
姓名 | 年齡 | 性別 | 評分 |
---|---|---|---|
史蒂夫 | 32 | 男 | 3.45 |
莉亞 | 28 | 女 | 4.6 |
文 | 45 | 男 | 3.9 |
凱蒂 | 38 | 女 | 2.78 |
示例
上述表格資料可以用 DataFrame 表示如下:
import pandas as pd # Data represented as a dictionary data = { 'Name': ['Steve', 'Lia', 'Vin', 'Katie'], 'Age': [32, 28, 45, 38], 'Gender': ['Male', 'Female', 'Male', 'Female'], 'Rating': [3.45, 4.6, 3.9, 2.78] } # Creating the DataFrame df = pd.DataFrame(data) # Display the DataFrame print(df)
輸出
執行上述程式碼後,您將獲得以下輸出:
Name Age Gender Rating 0 Steve 32 Male 3.45 1 Lia 28 Female 4.60 2 Vin 45 Male 3.90 3 Katie 38 Female 2.78
關鍵點
以下是與 Pandas DataFrame 相關的關鍵點:
- 異質資料
- 大小可變
- 資料可變
使用多個數據結構的目的
Pandas 資料結構是低維資料的靈活容器。例如,DataFrame 是 Series 的容器,Series 是標量的容器。這種靈活性允許高效的資料操作和儲存。
構建和處理多維陣列可能會很枯燥,並且在編寫函式時需要仔細考慮資料的方向。Pandas 透過提供直觀的資料結構來減少這種心智負擔。
示例
下面的例子表示 DataFrame 中的一個 Series。
import pandas as pd # Data represented as a dictionary data = { 'Name': ['Steve', 'Lia', 'Vin', 'Katie'], 'Age': [32, 28, 45, 38], 'Gender': ['Male', 'Female', 'Male', 'Female'], 'Rating': [3.45, 4.6, 3.9, 2.78] } # Creating the DataFrame df = pd.DataFrame(data) # Display a Series within a DataFrame print(df['Name'])
輸出
執行上述程式碼後,您將獲得以下輸出:
0 Steve 1 Lia 2 Vin 3 Katie Name: Name, dtype: object