人工智能学习笔记 - 初级篇Ⅰ - Python基础 - 第10节 - Pandas 基础

Pandas 是一个强大的 Python 数据分析工具库,它使得数据预处理、分析和可视化变得更加简单和直观。以下是使用 Pandas 进行数据处理的一些基本操作。

产生 Pandas 对象

Pandas 主要有两种数据结构:Series 和 DataFrame。

import pandas as pd
import numpy as np

# 创建 Series
s = pd.Series([1, 3, 5, np.nan, 6, 8])

# 创建 DataFrame
dates = pd.date_range('20230101', periods=6)
df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list('ABCD'))

查看数据

# 查看 DataFrame 的头部数据
print(df.head())

# 查看 DataFrame 的尾部数据
print(df.tail(3))

# 显示索引、列和底层的 numpy 数据
print(df.index)
print(df.columns)
print(df.to_numpy())

排序

# 按轴排序
print(df.sort_index(axis=1, ascending=False))

# 按值排序
print(df.sort_values(by='B'))

索引

# 选择单列,产生 Series
print(df['A'])

# 通过 [] 进行选择,这将会对行进行切片
print(df[0:3])

缺失数据

Pandas 主要使用 np.nan 来表示缺失数据。

# 填充缺失值
print(df.fillna(value=5))

# 获取布尔掩码,其中数据缺失
print(pd.isna(df))

计算操作

# 描述性统计
print(df.describe())

# 执行一个描述性统计
print(df.mean())

合并

# 合并 DataFrame
df1 = pd.DataFrame(np.random.randn(10, 4))
pieces = [df1[:3], df1[3:7], df1[7:]]
print(pd.concat(pieces))

改变形状

# 使用“堆叠”技术
stacked = df.stack()
print(stacked.unstack())

时间序列

# 创建时间序列数据
rng = pd.date_range('1/1/2023', periods=100, freq='S')
ts = pd.Series(np.random.randint(0, 500, len(rng)), index=rng)
print(ts.resample('5Min').sum())

Categoricals

df = pd.DataFrame({"id":[1,2,3,4,5,6], "raw_grade":['a', 'b', 'b', 'a', 'a', 'e']})
df["grade"] = df["raw_grade"].astype("category")
print(df["grade"])

绘图

import matplotlib.pyplot as plt

ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2023', periods=1000))
ts = ts.cumsum()
ts.plot()
plt.show()

在这里插入图片描述

文件读写

# 写入 CSV
df.to_csv('example.csv')
# 从 CSV 读取
pd.read_csv('example.csv')

通过这些基本操作,你可以开始使用 Pandas 来处理和分析实际的数据集了。Pandas 强大的功能可以帮助你轻松地完成数据预处理、分析及可视化等任务。

最后

欢迎关注我的微信公众号, 一起交流学习!!!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御风之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值