Python中使用pandas

使用Pandas进行数据处理和分析

Pandas是Python中最流行的数据处理和分析库之一。下面我将介绍Pandas的基本使用方法。

安装Pandas

复制代码
pip install pandas

基本数据结构

1. Series - 一维数组

python 复制代码
import pandas as pd

# 创建Series
s = pd.Series([1, 3, 5, 7, 9])
print(s)

2. DataFrame - 二维表格

python 复制代码
# 创建DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35],
    'City': ['New York', 'London', 'Paris']
}
df = pd.DataFrame(data)
print(df)

数据读取与写入

读取CSV文件

python 复制代码
df = pd.read_csv('data.csv')

写入CSV文件

python 复制代码
df.to_csv('output.csv', index=False)

读取Excel文件

python 复制代码
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')

写入Excel文件

python 复制代码
df.to_excel('output.xlsx', sheet_name='Sheet1', index=False)

数据查看与选择

查看数据

python 复制代码
df.head()      # 查看前5行
df.tail(3)     # 查看后3行
df.info()      # 查看数据信息
df.describe()  # 统计摘要

选择数据

python 复制代码
# 选择列
df['Name']       # 选择单列
df[['Name', 'Age']]  # 选择多列

# 选择行
df.iloc[0]       # 按位置选择第一行
df.loc[0]        # 按索引选择
df[df['Age'] > 30]  # 条件选择

数据操作

添加/删除列

python 复制代码
# 添加列
df['Salary'] = [50000, 60000, 70000]

# 删除列
df = df.drop('City', axis=1)

排序

python 复制代码
df.sort_values('Age', ascending=False)

分组聚合

python 复制代码
df.groupby('City')['Age'].mean()

处理缺失值

python 复制代码
df.dropna()      # 删除缺失值
df.fillna(0)     # 填充缺失值

数据合并

python 复制代码
# 连接两个DataFrame
df1 = pd.DataFrame({'A': ['A0', 'A1'], 'B': ['B0', 'B1']})
df2 = pd.DataFrame({'A': ['A2', 'A3'], 'B': ['B2', 'B3']})
result = pd.concat([df1, df2])

时间序列处理

python 复制代码
# 创建时间序列
dates = pd.date_range('20230101', periods=6)
df = pd.DataFrame({'Date': dates, 'Value': [1, 2, 3, 4, 5, 6]})

# 设置日期为索引
df.set_index('Date', inplace=True)

# 按时间筛选
df['2023-01-01':'2023-01-03']

这只是Pandas功能的冰山一角。Pandas还提供了许多高级功能,如数据透视表、窗口函数、数据可视化集成等。

相关推荐
froginwe118 分钟前
Maven 仓库概述
开发语言
我不是QI16 分钟前
周志华《机器学习---西瓜书》 一
人工智能·python·机器学习·ai
今天没ID17 分钟前
Python 编程实战:从基础语法到算法实现 (1)
python
二川bro41 分钟前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python
棒棒的皮皮1 小时前
【Python】Open3d用于3D测高项目
python·3d·open3d
CoderYanger1 小时前
优选算法-队列+宽搜(BFS):72.二叉树的最大宽度
java·开发语言·算法·leetcode·职场和发展·宽度优先·1024程序员节
CodeLongBear1 小时前
Python数据分析: 数据可视化入门:Matplotlib基础操作与多坐标系实战
python·信息可视化·数据分析
疏狂难除1 小时前
随便玩玩lldb (二)
开发语言·后端·rust
星轨初途1 小时前
数据结构排序算法详解(5)——非比较函数:计数排序(鸽巢原理)及排序算法复杂度和稳定性分析
c语言·开发语言·数据结构·经验分享·笔记·算法·排序算法