pandas

  1. pandas 是 Python 中一个非常流行和强大的数据分析库。它提供了高效的操作数据表和时间序列功能,广泛用于数据清洗、数据分析和数据可视化

    pip install pandas

javascript 复制代码
 import pandas as pd
  1. 常用数据结构 pandas 主要提供两个数据结构:

Series: 一维数组,带有标签(索引)。 DataFrame: 二维数据结构,类似于电子表格,由多行和多列组成。

  1. 创建 DataFrame 和 Series
  • 创建 Series
ini 复制代码
data = [1, 2, 3, 4, 5]
s = pd.Series(data)
print(s)
  • 创建 DataFrame
bash 复制代码
data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35],
    'City': ['New York', 'San Francisco', 'Los Angeles']
}
df = pd.DataFrame(data)
print(df)
  1. 基本操作
ini 复制代码
df = pd.read_csv('data.csv')  # 从 CSV 文件读取数据
bash 复制代码
print(df.head())  # 查看前几行
print(df.info())  # 查看数据概况
print(df.describe())  # 查看描述性统计
ini 复制代码
选择列
ages = df['Age']
选择行
first_row = df.iloc[0] # 通过位置选择
bob_row = df[df['Name'] == 'Bob'] # 通过条件选择
ini 复制代码
处理缺失值
df.dropna(inplace=True) # 删除含有缺失值的行
df.fillna(0, inplace=True) # 用0填充缺失值
重命名列
df.rename(columns={'Name': 'Full Name'}, inplace=True)
  1. 数据分析
ini 复制代码
mean_age = df['Age'].mean()  # 计算平均年龄
age_counts = df['Age'].value_counts()  # 统计每个年龄的数量
ini 复制代码
grouped = df.groupby('City').mean()  # 按城市分组并计算每组的平均值print(grouped)
  1. 数据可视化:

虽然 pandas 主要是一个数据分析工具,但它可以与 matplotlib 或 seaborn 等可视化库集成以进行数据可视化。

scss 复制代码
import matplotlib.pyplot as plt
绘制年龄分布图
df['Age'].hist()
plt.title('Age Distribution')
plt.xlabel('Age')
plt.ylabel('Frequency')
plt.show()
  1. 示例代码:下面是一个简单的示例,将上述部分拼凑在一起,展示如何操作 pandas:
python 复制代码
import pandas as pd
import matplotlib.pyplot as plt
创建 DataFrame
data = {
 'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve'],
 'Age': [25, 30, 35, 40, None],
 'City': ['New York', 'San Francisco', 'Los Angeles', 'New York', 'San Francisco']
}
df = pd.DataFrame(data)
处理缺失值
df['Age'].fillna(df['Age'].mean(), inplace=True)
统计分析
print(df.describe())
分组并求平均
grouped = df.groupby('City')['Age'].mean().reset_index()
print(grouped)
可视化
grouped.plot(x='City', y='Age', kind='bar')
plt.title('Average Age by City')
plt.xlabel('City')
plt.ylabel('Average Age')
plt.show()
相关推荐
AINative软件工程39 分钟前
LLM Prompt Registry 工程实践:集中管理 Prompt,让模型调用不再散落在代码各处
后端·python·llm
Patrick在香港1 小时前
MCP 的 initialize 握手真的没了?67 行标准库实测 2026-07-28 规范
python·agent·claude·mcp·json-rpc
vx_Biye_Design1 小时前
springboot角色扮演服务平台65161-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·python·spring·课程设计
追烽少年x1 小时前
从零构建一个3D点云预览器:Python + PySide6 + pyqtgraph 实战
python·3d
weixin_440401691 小时前
质朴的爬虫+数据处理
爬虫·python·数据分析·pandas
估值探索者1 小时前
【Python量化系统工程实战 #01】数据存储选型 CSVSQLiteMySQL 对比与 SQLite 实战建库
开发语言·jvm·python·sqlite·api接口·数据api接口·股票数据api接口
计算机毕业编程指导师1 小时前
计算机毕设答辩技巧:基于Hadoop+Django的公共交通运营数据分析与可视化系统怎么做 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·交通运行
砚底藏山河1 小时前
量化实战:行情数据 Schema 演进与向后兼容
java·python·金融·maven
苏离~Hack1 小时前
InfoScraper:面向授权目标的一站式资产信息收集工具
python
计算机毕业编程指导师1 小时前
【计算机毕设选题推荐】基于Hadoop+Django高频电力消耗大数据分析系统从0到1 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
hadoop·python·数据分析·spark·毕业设计·课程设计·电力