📅  最后修改于: 2023-12-03 15:34:03.144000             🧑  作者: Mango
Pandas是一种数据分析工具,它提供了高效的数据框(DataFrame)和序列(Series)操作,可以满足各种数据处理需求。数据框是Pandas的核心数据结构,类似于Excel中的表格,可以存储和处理大量数据。
在本系列中,我们将深入讲解Pandas中数据框的各种操作,包括创建、修改、合并、筛选、排序等。同时,我们将结合实例进行详细讲解,帮助程序员学以致用。
首先,让我们来创建一个简单的数据框。以下代码使用字典创建一个数据框:
import pandas as pd
data = {'Name': ['Tom', 'Jack', 'Steve'],
'Age': [28, 34, 29],
'Country': ['US', 'Canada', 'UK']}
df = pd.DataFrame(data)
print(df)
输出:
| | Name | Age | Country | |---:|:-------|------:|:----------| | 0 | Tom | 28 | US | | 1 | Jack | 34 | Canada | | 2 | Steve | 29 | UK |
代码解释:
首先导入pandas模块,并将其重命名为pd,这是一种常用的编程规范。
定义一个字典data,该字典包含三个键值对,分别为'Name'、'Age'和'Country',对应的值为列表,分别存储着三个人的姓名、年龄和国家。
使用pd.DataFrame()函数将字典转换成数据框,并将结果赋值给变量df。
最后输出df的值,即可获得上述表格。
接下来,我们将介绍如何修改数据框中的数据。以下代码更新数据框中一列的值:
df['Age'] = [30, 36, 31]
print(df)
输出:
| | Name | Age | Country | |---:|:-------|------:|:----------| | 0 | Tom | 30 | US | | 1 | Jack | 36 | Canada | | 2 | Steve | 31 | UK |
代码解释:
使用类似于字典访问的方式,通过列名,可以获取数据框中某一列的数值。
通过赋值的方式,可以修改数据框中某一列的数值。
筛选数据框是数据分析中经常用到的操作。以下代码演示了如何选择数据框中符合某些条件的数据:
df2 = df[df['Age']>30]
print(df2)
输出:
| | Name | Age | Country | |---:|:-------|------:|:----------| | 1 | Jack | 36 | Canada |
代码解释:
df['Age']>30是一个布尔型序列,其中包含了判断每个元素是否大于30的结果。
df[df['Age']>30]的运算结果是一个新的数据框,它只包含满足条件的那些行。
有时候我们需要将多个数据框合并成一个大的数据框。Pandas提供了多种方式来进行数据框的合并。以下代码演示了如何通过拼接的方式将两个数据框合并:
data1 = {'Name': ['Tom', 'Jack', 'Steve'],
'Age': [28, 34, 29]}
data2 = {'Country': ['US', 'Canada', 'UK'],
'Salary': [5000, 4500, 6000]}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
df3 = pd.concat([df1, df2], axis=1)
print(df3)
输出:
| | Name | Age | Country | Salary | |---:|:-------|------:|---------:|---------:| | 0 | Tom | 28 | US | 5000 | | 1 | Jack | 34 | Canada | 4500 | | 2 | Steve | 29 | UK | 6000 |
代码解释:
首先定义两个字典data1和data2,分别包含了两个数据框中的数据。
使用pd.DataFrame()函数将两个字典分别转换成数据框df1和df2。
使用pd.concat()函数将两个数据框拼接起来,并将结果赋值给变量df3。axis=1表示按列进行拼接,即将df1和df2中的列进行合并。
输出df3的值,即可获得上述表格。
排序是数据分析中常用的操作之一。以下代码演示了如何对数据框中的数据进行排序:
df4 = df.sort_values(by='Age')
print(df4)
输出:
| | Name | Age | Country | |---:|:-------|------:|:----------| | 0 | Tom | 30 | US | | 2 | Steve | 31 | UK | | 1 | Jack | 36 | Canada |
代码解释:
使用df.sort_values()函数可以对数据框中的数据进行排序。
by='Age'表示按照'Age'这一列进行排序。
输出df4的值,即可获得上述表格。
本文介绍了Pandas数据框(DataFrame)的基本操作,包括创建、修改、筛选、排序和合并等。Pandas强大的数据分析能力,可以帮助程序员高效地进行数据分析和处理,为实现科学计算和机器学习提供了有力的支持。