Python pandas.DataFrame操作指南:创建、索引、增删
版权申诉
185 浏览量
更新于2024-09-15
1
收藏 67KB PDF 举报
"这篇教程主要讲解了Python中pandas库DataFrame对象的创建、索引、增添和删除等基本操作,适合初学者参考学习。"
在Python的数据处理领域,pandas库的DataFrame是极其重要的数据结构,它允许我们以二维表格形式组织数据。这篇教程将带你了解如何进行DataFrame的基本操作。
一、创建DataFrame
1. 基于字典创建:你可以使用Python字典来创建DataFrame,其中字典的键将成为列名,值则对应于列的值。例如:
```python
import pandas as pd
aa = {'one': [1, 2, 3], 'two': [2, 3, 4], 'three': [3, 4, 5]}
bb = pd.DataFrame(aa)
```
如果不指定索引,DataFrame会默认使用0, 1, 2等整数作为行索引。若要自定义索引,可以这样做:
```python
bb = pd.DataFrame(aa, index=['first', 'second', 'third'])
```
2. 从多维数组创建:使用NumPy的多维数组(ndarray)也能创建DataFrame,但需要额外指定列名和行索引:
```python
import numpy as np
aa = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
bb = pd.DataFrame(aa, index=[22, 33, 44], columns=['one', 'two', 'three'])
```
3. 使用已有DataFrame创建:你可以通过现有的DataFrame来创建新的DataFrame,例如通过选择或切片操作。
二、DataFrame的索引
DataFrame的索引包括行索引(index)和列索引(columns)。可以通过`.loc`和`.iloc`等方法进行访问和操作:
- `.loc`:基于标签(列名或行索引名)进行访问。
- `.iloc`:基于位置(整数索引)进行访问。
例如,要获取第一列数据,可以使用`bb['one']`或`bb.iloc[:, 0]`。
三、增添数据
1. 添加新列:可以直接为DataFrame添加新列,只要新列名不存在且数据长度与现有行数匹配:
```python
bb['four'] = [6, 7, 8]
```
2. 合并DataFrame:使用`pd.concat()`或`merge()`函数可以将多个DataFrame合并。
四、删除数据
1. 删除列:使用`del`关键字或`.drop()`方法可以删除列:
```python
del bb['four'] # 使用del关键字
bb.drop('three', axis=1, inplace=True) # 使用.drop()方法,axis=1表示按列删除
```
2. 删除行:同样,`.drop()`方法也可用于删除行,此时设置`axis=0`:
```python
bb.drop('22', axis=0, inplace=True) # 删除行索引为22的行
```
3. 清除数据:如果想清空DataFrame的所有数据,可以使用`.reset_index(drop=True)`。
总结,pandas.DataFrame提供了丰富的操作接口,无论是创建、索引、增添还是删除数据,都能灵活应对。熟练掌握这些基本操作,将有助于你更高效地处理和分析数据。
176 浏览量
4615 浏览量
4899 浏览量
7145 浏览量
26158 浏览量
7370 浏览量
259 浏览量
918 浏览量
978 浏览量

weixin_38736562
- 粉丝: 0
最新资源
- Jabber与SOAP协议代理模型:实现与通信解决方案
- Jabber与SOAP协议代理模型实现与应用
- SOA服务生命周期:专业指南第三部分
- SOA参考架构解析:专业人员指南第二部分
- SOA专业指南:第一部分——揭示服务导向架构应用的核心原因
- 大学英语四级词汇解析与学习
- Hibernate中文教程:从入门到精通
- Apache JMeter性能测试实战指南
- VisualBasic6.0程序设计教程概览
- Ajax实战:革新Web设计,打造无缝体验
- 快速入门:使用JFC/Swing构建GUI
- 深入Linux编程:探索高级技术
- iBATIS开发指南:从入门到高级特性解析
- 广西思科认证培训中心:实战课程与实验指南
- 经典数据库系统学习指南:必读论文清单
- CISCO7609路由器配置指南:命令参考与12.1E版本特性