Pandas入门:数据结构与索引操作详解
121 浏览量
更新于2024-08-29
收藏 151KB PDF 举报
n", 'o', 'p']
# obj2.values 保持不变,仍然是[4, 7, -5, 3]
# 但索引已更新为['m', 'n', 'o', 'p']
# 因此,访问元素的方式也会相应改变,如:
obj2['n']
7
# 二,DataFrame
# DataFrame是二维表格型数据结构,它含有一系列有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。
# DataFrame既有行索引也有列索引,可以被看作是由Series组成的字典,或者说是一个表格形式的字典,其中键是列名,值是Series。
# 创建DataFrame的基本方式是通过字典的列表:
data = {'city': ['Beijing', 'Shanghai', 'Guangzhou'],
'population': [21542000, 24256800, 13081000],
'area': [16410, 6340, 7434]}
df = pd.DataFrame(data)
# df
# city population area
# 0 Beijing 21542000 16410
# 1 Shanghai 24256800 6340
# 2 Guangzhou 13081000 7434
# DataFrame的列名可以通过.keys()方法获取,数据可以通过列名或位置访问:
df.columns
Index(['city', 'population', 'area'], dtype='object')
df['population']
# 输出人口数量的Series
# 0 21542000
# 1 24256800
# 2 13081000
# Name: population, dtype: int64
# 三,Panel
# Panel是Pandas中的三维数据结构,类似于DataFrame的扩展,它有三个轴:items、major_axis 和 minor_axis。
# 通常在实际应用中不如DataFrame常见,这里不做详细介绍。
# 索引操作
# 索引在Pandas中非常重要,它不仅用于数据的选取,还可以作为数据的一部分。Pandas提供了丰富的索引操作,包括选择、切片、布尔索引等。
# 数据运算
# Pandas提供了大量的数据运算功能,包括统计函数(如mean, sum, count等)、描述性统计、合并与连接、重采样和时间序列分析等。
# 层次化索引
# 层次化索引(Hierarchical Indexing)允许在一个轴上设置多级索引,这可以用来处理高维度的数据,或者创建具有复杂索引结构的数据集。
# 数据读取与存储
# Pandas支持多种数据格式的读取和写入,包括CSV、TXT、JSON、Excel、数据库文件等,方便数据的导入导出。
# 数据清洗与整理
# 数据清洗涉及缺失值处理、重复值检测、异常值识别等,Pandas提供了诸如dropna、fillna、replace等方法进行数据清理。数据整理则包括列的排序、重命名、合并、重塑等操作。
# 数据分组与聚合
# 使用groupby方法可以对数据进行分组,然后对每个组进行聚合操作,如计算平均值、总和等。这对于数据分析中的分组统计非常有用。
# 时间序列
# Pandas特别适合处理时间序列数据,它内置了对日期和时间的处理函数,支持时间序列的重采样、窗口统计等操作。
Pandas是Python数据分析中的核心库,其强大的数据结构和索引功能使得数据处理变得高效便捷。无论是数据清洗、分析还是建模,Pandas都能提供强大支持。通过学习和掌握Pandas,可以极大地提升数据工作的效率。
2022-01-16 上传
2022-01-16 上传
2020-12-21 上传
2021-01-07 上传
2020-12-21 上传
2020-12-21 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
weixin_38629362
- 粉丝: 6
- 资源: 967
最新资源
- Chrome ESLint扩展:实时运行ESLint于网页脚本
- 基于 Webhook 的 redux 预处理器实现教程
- 探索国际CMS内容管理系统v1.1的新功能与应用
- 在Heroku上快速部署Directus平台的指南
- Folks Who Code官网:打造安全友好的开源环境
- React测试专用:上下文提供者组件实现指南
- RabbitMQ利用eLevelDB后端实现高效消息索引
- JavaScript双向对象引用的极简实现教程
- Bazel 0.18.1版本发布,Windows平台构建工具优化
- electron-notification-desktop:电子应用桌面通知解决方案
- 天津理工操作系统实验报告:进程与存储器管理
- 掌握webpack动态热模块替换的实现技巧
- 恶意软件ep_kaput: Etherpad插件系统破坏者
- Java实现Opus音频解码器jopus库的应用与介绍
- QString库:C语言中的高效动态字符串处理
- 微信小程序图像识别与AI功能实现源码