Pandas 最常用函数整理

读取数据

序号函数说明
1pd.read_csv(filename)读取 CSV 文件;
2pd.read_excel(filename)读取 Excel 文件;
3pd.read_sql(query, connection_object)从 SQL 数据库读取数据;
4pd.read_json(json_string)从 JSON 字符串中读取数据;
5pd.read_html(url)从 HTML 页面中读取数据。
import pandas as pd

# 从 CSV 文件中读取数据
df = pd.read_csv('data.csv')

# 从 Excel 文件中读取数据
df = pd.read_excel('data.xlsx')

# 从 SQL 数据库中读取数据
import sqlite3
conn = sqlite3.connect('database.db')
df = pd.read_sql('SELECT * FROM table_name', conn)

# 从 JSON 字符串中读取数据
json_string = '{"name": "John", "age": 30, "city": "New York"}'
df = pd.read_json(json_string)

# 从 HTML 页面中读取数据
url = 'https://www.runoob.com'
dfs = pd.read_html(url)
df = dfs[0] # 选择第一个数据框

查看数据

序号函数说明
1df.head(n)显示前 n 行数据;
2df.tail(n)显示后 n 行数据;
3df.info()显示数据的信息,包括列名、数据类型、缺失值等;
4df.describe()显示数据的基本统计信息,包括均值、方差、最大值、最小值等;
5df.shape显示数据的行数和列数。
# 显示前五行数据
df.head()

# 显示后五行数据
df.tail()

# 显示数据信息
df.info()

# 显示基本统计信息
df.describe()

# 显示数据的行数和列数
df.shape

数据清洗

序号函数说明
1df.dropna()删除包含缺失值的行或列;
2df.fillna(value)将缺失值替换为指定的值;
3df.replace(old_value, new_value)将指定值替换为新值;
4df.duplicated()检查是否有重复的数据;
5df.drop_duplicates()删除重复的数据。
# 删除包含缺失值的行或列
df.dropna()

# 将缺失值替换为指定的值
df.fillna(0)

# 将指定值替换为新值
df.replace('old_value', 'new_value')

# 检查是否有重复的数据
df.duplicated()

# 删除重复的数据
df.drop_duplicates()

数据选择和切片

序号函数说明
1df[column_name]选择指定的列;
2df.loc[row_index, column_name]通过标签选择数据;
3df.iloc[row_index, column_index]通过位置选择数据;
4df.ix[row_index, column_name]通过标签或位置选择数据;
5df.filter(items=[column_name1, column_name2])选择指定的列;
6df.filter(regex='regex')选择列名匹配正则表达式的列;
7df.sample(n)随机选择 n 行数据。
# 选择指定的列
df['column_name']

# 通过标签选择数据
df.loc[row_index, column_name]

# 通过位置选择数据
df.iloc[row_index, column_index]

# 通过标签或位置选择数据
df.ix[row_index, column_name]

# 选择指定的列
df.filter(items=['column_name1', 'column_name2'])

# 选择列名匹配正则表达式的列
df.filter(regex='regex')

# 随机选择 n 行数据
df.sample(n=5)

数据排序

序号函数说明
1df.sort_values(column_name)按照指定列的值排序;
2df.sort_values([column_name1, column_name2], ascending=[True, False])按照多个列的值排序;
3df.sort_index()按照索引排序。
# 按照指定列的值排序
df.sort_values('column_name')

# 按照多个列的值排序
df.sort_values(['column_name1', 'column_name2'], ascending=[True, False])

# 按照索引排序
df.sort_index()

数据分组和聚合

序号函数说明
1df.groupby(column_name)按照指定列进行分组;
2df.aggregate(function_name)对分组后的数据进行聚合操作;
3df.pivot_table(values, index, columns, aggfunc)生成透视表。
# 按照指定列进行分组
df.groupby('column_name')

# 对分组后的数据进行聚合操作
df.aggregate('function_name')

# 生成透视表
df.pivot_table(values='value', index='index_column', columns='column_name', aggfunc='function_name')

数据合并

函数说明
pd.concat([df1, df2])将多个数据框按照行或列进行合并;
pd.merge(df1, df2, on=column_name)按照指定列将两个数据框进行合并。
# 将多个数据框按照行或列进行合并
df = pd.concat([df1, df2])

# 按照指定列将两个数据框进行合并
df = pd.merge(df1, df2, on='column_name')

数据选择和过滤

函数说明
df.loc[row_indexer, column_indexer]按标签选择行和列。
df.iloc[row_indexer, column_indexer]按位置选择行和列。
df[df['column_name'] > value]选择列中满足条件的行。
df.query('column_name > value')使用字符串表达式选择列中满足条件的行。

数据统计和描述

函数说明
df.describe()计算基本统计信息,如均值、标准差、最小值、最大值等。
df.mean()计算每列的平均值。
df.median()计算每列的中位数。
df.mode()计算每列的众数。
df.count()计算每列非缺失值的数量。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DOT Manager

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值