Pandas PyPI 安装与使用指南 – wiki基地

Pandas PyPI 安装与使用指南

Pandas 是 Python 编程语言中一个功能强大、灵活且易于使用的数据分析和处理库。它提供了高效的数据结构,如 DataFrame 和 Series,使得处理结构化数据变得异常简单。无论是数据清洗、转换、聚合还是可视化,Pandas 都是数据科学家和分析师不可或缺的工具。

本文将详细介绍如何通过 PyPI 安装 Pandas,并提供一份全面的使用指南,帮助您快速上手。

1. 什么是 Pandas?

Pandas 的核心是其数据结构:

  • Series (序列):一维带标签的数组,可以存储任何数据类型(整数、字符串、浮点数、Python 对象等)。它类似于 Excel 中的一列数据或 SQL 表中的一个字段。
  • DataFrame (数据帧):二维带标签的数据结构,具有不同的列类型。它类似于 Excel 工作表、SQL 表或一系列 Series 对象的字典。这是 Pandas 中最常用的数据结构,也是数据分析的主要工作对象。

Pandas 建立在 NumPy 库之上,因此它具有处理大型数据集的高性能特性。

2. 环境准备

在安装 Pandas 之前,请确保您的系统已安装 Python 和 pip(Python 的包管理器)。

  • Python: 建议使用 Python 3.7 或更高版本。
  • pip: 通常随 Python 一同安装。您可以通过运行 pip --version 来检查其是否可用。如果未安装,请参考 Python 官方文档进行安装。

3. Pandas 安装 (PyPI)

通过 PyPI (Python Package Index) 安装 Pandas 是最常用和推荐的方式。打开您的终端或命令提示符,然后运行以下命令:

bash
pip install pandas

这将会下载并安装最新稳定版本的 Pandas 及其所有必要的依赖项,如 NumPy。

验证安装

安装完成后,您可以在 Python 解释器中验证 Pandas 是否成功安装:

python
import pandas as pd
print(pd.__version__)

如果成功打印出 Pandas 的版本号,则表示安装成功。

4. Pandas 基础使用

4.1. 导入 Pandas

通常,我们会将 Pandas 导入并约定俗成地使用别名 pd,这使得代码更简洁:

python
import pandas as pd

4.2. 创建 Series

Series 可以从列表、NumPy 数组或字典创建:

“`python

从列表创建 Series

s = pd.Series([1, 3, 5, 7, 9])
print(“Series from list:\n”, s)

从 NumPy 数组创建 Series

import numpy as np
arr = np.array([10, 20, 30, 40])
s_np = pd.Series(arr)
print(“\nSeries from NumPy array:\n”, s_np)

从字典创建 Series (键将作为索引)

d = {‘a’: 100, ‘b’: 200, ‘c’: 300}
s_dict = pd.Series(d)
print(“\nSeries from dictionary:\n”, s_dict)
“`

输出:

“`
Series from list:
0 1
1 3
2 5
3 7
4 9
dtype: int64

Series from NumPy array:
0 10
1 20
2 30
3 40
dtype: int64

Series from dictionary:
a 100
b 200
c 300
dtype: int64
“`

4.3. 创建 DataFrame

DataFrame 可以从字典、列表的列表或 NumPy 数组等多种数据源创建。最常见的是从字典创建,其中字典的键会成为列名:

“`python

从字典创建 DataFrame

data = {
‘Name’: [‘Alice’, ‘Bob’, ‘Charlie’, ‘David’],
‘Age’: [25, 30, 35, 28],
‘City’: [‘New York’, ‘Paris’, ‘London’, ‘Berlin’]
}
df = pd.DataFrame(data)
print(“DataFrame from dictionary:\n”, df)

指定索引

df_indexed = pd.DataFrame(data, index=[‘A’, ‘B’, ‘C’, ‘D’])
print(“\nDataFrame with custom index:\n”, df_indexed)
“`

输出:

“`
DataFrame from dictionary:
Name Age City
0 Alice 25 New York
1 Bob 30 Paris
2 Charlie 35 London
3 David 28 Berlin

DataFrame with custom index:
Name Age City
A Alice 25 New York
B Bob 30 Paris
C Charlie 35 London
D David 28 Berlin
“`

4.4. 基本操作

  • 查看数据head(), tail(), info(), describe()

    python
    print("\nFirst 2 rows:\n", df.head(2))
    print("\nLast 1 row:\n", df.tail(1))
    df.info() # 获取 DataFrame 的摘要信息,包括数据类型和非空值数量
    print("\nDescriptive statistics:\n", df.describe()) # 数值列的描述性统计

  • 选择列

    python
    print("\nSelect 'Name' column:\n", df['Name']) # 返回 Series
    print("\nSelect 'Name' and 'City' columns:\n", df[['Name', 'City']]) # 返回 DataFrame

  • 选择行 (基于索引)loc (基于标签), iloc (基于位置)

    python
    print("\nSelect row with index 0 (using iloc):\n", df.iloc[0])
    print("\nSelect row with index 'A' (using loc on df_indexed):\n", df_indexed.loc['A'])

5. Pandas 进阶使用

5.1. 从文件读取数据

Pandas 支持读取多种文件格式,如 CSV, Excel, SQL 数据库等。CSV (Comma Separated Values) 是最常见的:

“`python

假设有一个名为 ‘data.csv’ 的文件,内容如下:

Name,Age,City

Emily,22,Miami

Frank,40,Seattle

将以下内容保存为 data.csv 到您的工作目录中

import os

with open(‘data.csv’, ‘w’) as f:

f.write(“Name,Age,City\n”)

f.write(“Emily,22,Miami\n”)

f.write(“Frank,40,Seattle\n”)

df_csv = pd.read_csv(‘data.csv’)
print(“\nDataFrame from data.csv:\n”, df_csv)
“`

5.2. 数据清洗和预处理

  • 处理缺失值isnull(), dropna(), fillna()

    “`python

    创建一个包含缺失值的 DataFrame

    df_missing = pd.DataFrame({
    ‘A’: [1, 2, np.nan, 4],
    ‘B’: [5, np.nan, 7, 8],
    ‘C’: [9, 10, 11, 12]
    })
    print(“\nDataFrame with missing values:\n”, df_missing)

    print(“\nMissing values check:\n”, df_missing.isnull())
    print(“\nDrop rows with any missing values:\n”, df_missing.dropna())
    print(“\nFill missing values with 0:\n”, df_missing.fillna(0))
    print(“\nFill missing values with mean of column A:\n”, df_missing[‘A’].fillna(df_missing[‘A’].mean()))
    “`

  • 数据类型转换astype()

    python
    df['Age'] = df['Age'].astype(float)
    print("\nAge column after type conversion:\n", df.dtypes)

5.3. 数据筛选和查询

“`python

筛选年龄大于 30 的数据

df_filtered_age = df[df[‘Age’] > 30]
print(“\nPeople older than 30:\n”, df_filtered_age)

筛选居住在 ‘New York’ 的人

df_ny = df[df[‘City’] == ‘New York’]
print(“\nPeople from New York:\n”, df_ny)

组合条件

df_complex_filter = df[(df[‘Age’] > 28) & (df[‘City’] == ‘Paris’)]
print(“\nPeople older than 28 and from Paris:\n”, df_complex_filter)
“`

5.4. 数据聚合 (Group By)

groupby() 方法用于根据一个或多个列对数据进行分组,然后对每个组执行聚合操作(如求和、平均值、计数等)。

“`python

假设有更多数据

data_more = {
‘City’: [‘New York’, ‘Paris’, ‘London’, ‘Berlin’, ‘New York’, ‘London’],
‘Sales’: [100, 150, 200, 120, 110, 180]
}
df_sales = pd.DataFrame(data_more)
print(“\nSales DataFrame:\n”, df_sales)

按城市分组并计算总销售额

city_sales = df_sales.groupby(‘City’)[‘Sales’].sum()
print(“\nTotal sales by city:\n”, city_sales)

按城市分组并计算平均销售额

city_avg_sales = df_sales.groupby(‘City’)[‘Sales’].mean()
print(“\nAverage sales by city:\n”, city_avg_sales)
“`

6. 总结

Pandas 是 Python 数据分析生态系统中的基石。通过本文的指南,您应该已经掌握了 Pandas 的基本安装方法和核心使用技巧。从创建 Series 和 DataFrame,到进行数据清洗、筛选和聚合,Pandas 提供了直观且高效的 API 来处理各种数据分析任务。

随着您对 Pandas 的深入学习和实践,您会发现它在数据科学工作流程中的巨大价值。建议查阅 Pandas 官方文档以获取更详细的功能和高级用法。

滚动至顶部