Pandas基础操作详解:从Series到DataFrame
需积分: 20 191 浏览量
更新于2024-09-12
收藏 432KB PDF 举报
"这篇文档是关于Pandas学习的笔记,主要涵盖了Pandas中的Series和DataFrame对象的创建、操作以及选择元素等基础知识。"
在Python的数据分析领域,Pandas库是不可或缺的一部分,它提供了高效的数据结构,如Series和DataFrame,便于处理和分析数据。以下是对这些内容的详细解释:
1. Series对象
Series是Pandas的基本数据结构之一,它类似于一维数组,可以存储各种数据类型。创建Series可以通过列表、NumPy数组或字典:
- 使用列表创建:
```python
s = pd.Series([12, -4, 7, 9])
```
- 查看元素的值:
```python
print(s.values)
```
- 查看索引标签:
```python
print(s.index)
```
- 使用NumPy数组定义Series:
```python
arr = np.array([1, 2, 3, 4])
s3 = pd.Series(arr)
```
- 将Series视为字典,通过键(索引)获取值:
```python
dict = {'red': 200, 'blue': 20, 'orange': 10}
s = pd.Series(dict)
```
2. DataFrame对象
DataFrame是二维表格型数据结构,包含列标签和行索引。
- 通过字典创建DataFrame:
```python
data = {'color': ['blue', 'green', 'yellow', 'red', 'white'],
'object': ['ball', 'pen', 'pencil', 'paper', 'mug'],
'price': [1.2, 1.0, 0.6, 0.9, 1.7]}
frame = pd.DataFrame(data)
```
- 只创建部分列:
```python
frame2 = pd.DataFrame(data, columns=['object', 'price'])
```
- 使用NumPy数组快速创建:
```python
frame4 = pd.DataFrame(np.arange(16).reshape((4, 4)), index=['red', 'blue', 'yellow', 'white'],
columns=['ball', 'pen', 'pencil', 'paper'])
```
- 通过嵌套字典创建:
```python
dict = {'red': {1000: 1, 2000: 2}, 'blue': {3000: 3, 4000: 4}, 'orange': {1000: 10, 3000: 30}}
```
3. 选取元素
DataFrame提供了多种方式来选择和访问元素:
- 通过标签选择(loc):
```python
frame.loc['row_label', 'column_label']
```
- 通过位置选择(iloc):
```python
frame.iloc[row_index, column_index]
```
4. 赋值和删除
- 设置index和columns的标签:
```python
frame4.index.name = '茵蒂克丝'
frame4.columns.name = '考拉能丝'
```
- 添加新列:
```python
frame4['new'] = [101, 102, 103, 104]
```
- 删除列:
```python
del frame4['new']
```
5. 转置
DataFrame的转置操作(T)可以交换行和列:
```python
frame4.T
```
Pandas的这些基础操作对于数据分析工作至关重要,熟练掌握它们能够帮助我们更高效地处理数据,进行统计分析和数据清洗。通过不断练习和探索,你可以更深入地了解Pandas的强大功能。
2024-01-03 上传
2020-12-21 上传
2019-12-13 上传
2020-12-21 上传
2021-01-20 上传
2021-03-06 上传
Evan.C
- 粉丝: 0
- 资源: 6
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全