Python数据分析23种Pandas核心操作方法总结

  • Post category:Python

Python数据分析23种Pandas核心操作方法总结

Pandas 是 Python 中最流行的数据分析库之一。本文总结了 23 种 Pandas 核心操作方法,这些方法可以帮助你更快更高效地处理和分析数据。

读取数据

1. 读取 CSV 文件

使用 pandas.read_csv() 函数来读取 CSV 格式的数据。

import pandas as pd

df = pd.read_csv('data.csv')

2. 读取 Excel 文件

使用 pandas.read_excel() 函数来读取 Excel 格式的数据。

import pandas as pd

df = pd.read_excel('data.xlsx')

数据清洗

3. 查看数据的前几行

使用 pandas.DataFrame.head() 函数可以查看 DataFrame 的前几行。

import pandas as pd

df = pd.read_csv('data.csv')
df.head()

4. 查看数据的最后几行

使用 pandas.DataFrame.tail() 函数可以查看 DataFrame 的最后几行。

import pandas as pd

df = pd.read_csv('data.csv')
df.tail()

5. 清除重复数据

使用 pandas.DataFrame.drop_duplicates() 函数可以清除 DataFrame 中的重复数据。

import pandas as pd

df = pd.read_csv('data.csv')
df.drop_duplicates()

6. 处理缺失数据

使用 pandas.DataFrame.dropna() 函数可以删除 DataFrame 中存在缺失数据的行或列,使用 pandas.DataFrame.fillna() 函数可以填充缺失数据。

import pandas as pd

df = pd.read_csv('data.csv')
df.dropna()  # 删除包含缺失数据的行
df.fillna(0)  # 将缺失数据填充为 0

7. 数据类型转换

使用 pandas.DataFrame.astype() 函数可以将 DataFrame 中的数据类型转换为指定的数据类型。

import pandas as pd

df = pd.read_csv('data.csv')
df[['col1', 'col2']] = df[['col1', 'col2']].astype(float)  # 将 col1 和 col2 列的数据类型转换为 float

8. 排序

使用 pandas.DataFrame.sort_values() 函数可以按照指定的列对 DataFrame 进行排序。

import pandas as pd

df = pd.read_csv('data.csv')
df.sort_values('col1', ascending=False)  # 按 col1 列进行降序排序

9. 更改列名

使用 pandas.DataFrame.rename() 函数可以更改 DataFrame 的列名。

import pandas as pd

df = pd.read_csv('data.csv')
df.rename(columns={'old_col_name': 'new_col_name'})  # 将 old_col_name 更改为 new_col_name

10. 过滤行

使用布尔逻辑表达式可以对行进行过滤。

import pandas as pd

df = pd.read_csv('data.csv')
df[df['col1'] > 5]  # 选择 col1 大于 5 的行

数据统计

11. 描述性统计

使用 pandas.DataFrame.describe() 函数可以生成 DataFrame 的描述性统计。

import pandas as pd

df = pd.read_csv('data.csv')
df.describe()  # 生成描述性统计

12. 求和

使用 pandas.DataFrame.sum() 函数可以计算 DataFrame 中的每一列的和。

import pandas as pd

df = pd.read_csv('data.csv')
df.sum()  # 计算每一列的和

13. 计数

使用 pandas.DataFrame.count() 函数可以计算 DataFrame 中的非 NA/null 值的数量。

import pandas as pd

df = pd.read_csv('data.csv')
df.count()  # 计算每一列的非 NA/null 值的数量

14. 分组数据

使用 pandas.DataFrame.groupby() 函数可以将 DataFrame 中的数据按照指定的列进行分组。

import pandas as pd

df = pd.read_csv('data.csv')
grouped_data = df.groupby('col1')  # 按 col1 列进行分组
grouped_data.count()  # 对分组后的数据进行计数

15. 聚合数据

使用 pandas.DataFrame.aggregate() 函数可以对分组后的数据进行聚合操作。

import pandas as pd

df = pd.read_csv('data.csv')
grouped_data = df.groupby('col1')  # 按 col1 列进行分组
grouped_data.aggregate({'col2': 'sum', 'col3': 'max'})  # 对分组后的数据进行 sum 和 max 聚合操作

16. 透视表

使用 pandas.pivot_table() 函数可以生成透视表。

import pandas as pd

df = pd.read_csv('data.csv')
pd.pivot_table(df, values='col2', index='col1', columns='col3')  # 生成透视表

数据可视化

17. 条形图

使用 pandas.DataFrame.plot.bar() 函数可以生成条形图。

import pandas as pd

df = pd.read_csv('data.csv')
df.groupby('col1')['col2'].sum().plot.bar()  # 生成 col1 列与 col2 列的和的条形图

18. 折线图

使用 pandas.DataFrame.plot.line() 函数可以生成折线图。

import pandas as pd

df = pd.read_csv('data.csv')
df.groupby('col1')['col2'].sum().plot.line()  # 生成 col1 列与 col2 列的和的折线图

19. 散点图

使用 pandas.DataFrame.plot.scatter() 函数可以生成散点图。

import pandas as pd

df = pd.read_csv('data.csv')
df.plot.scatter(x='col1', y='col2')  # 生成 col1 列与 col2 列的散点图

20. 饼图

使用 pandas.DataFrame.plot.pie() 函数可以生成饼图。

import pandas as pd

df = pd.read_csv('data.csv')
df.groupby('col1')['col2'].sum().plot.pie()  # 生成 col1 列与 col2 列的和的饼图

数据保存

21. 保存为 CSV 文件

使用 pandas.DataFrame.to_csv() 函数可以将 DataFrame 保存为 CSV 格式的文件。

import pandas as pd

df = pd.read_csv('data.csv')
df.to_csv('new_data.csv', index=False)  # 将 DataFrame 保存为 new_data.csv 文件,不保存索引列

22. 保存为 Excel 文件

使用 pandas.DataFrame.to_excel() 函数可以将 DataFrame 保存为 Excel 格式的文件。

import pandas as pd

df = pd.read_csv('data.csv')
df.to_excel('new_data.xlsx', index=False)  # 将 DataFrame 保存为 new_data.xlsx 文件,不保存索引列

23. 保存为 SQL 数据库

使用 pandas.DataFrame.to_sql() 函数可以将 DataFrame 保存到 SQL 数据库中。

import pandas as pd
from sqlalchemy import create_engine

engine = create_engine('sqlite:///data.db')
df = pd.read_csv('data.csv')
df.to_sql('data_table', engine, index=False, if_exists='replace')  # 将 DataFrame 保存到 data_table 表中

以上是 23 种 Pandas 核心操作方法总结,覆盖了 Pandas 的读取数据、数据清洗、数据统计、数据可视化和数据保存五个方面。