pandas库详解

时间:2025-05-06 07:16:54

pandas是Python中一个流行的数据分析库,提供了大量的数据处理、清洗、分析和可视化的函数和工具。以下是pandas中一些常用的函数:

  1. 数据读取与写入函数:如 read_csv()read_excel()to_csv()to_excel() 等。
  2. 数据查看函数:如 head()tail()sample() 等,这些函数可以帮助我们查看数据的前几行、后几行、随机几行等。
  3. 数据选择函数:如 loc()iloc()at()iat() 等,这些函数可以帮助我们选择数据中的子集或者特定的元素。
  4. 数据清洗函数:如 drop()fillna()replace() 等,这些函数可以帮助我们删除缺失值、填充缺失值、替换特定的值等。
  5. 数据统计函数:如 describe()value_counts()mean()std() 等,这些函数可以帮助我们计算数据集的各种统计指标。
  6. 数据合并与分组函数:如 merge()concat()groupby() 等,这些函数可以帮助我们将多个数据集合并,或者根据某些条件进行数据分组。
  7. 数据绘图函数:如 plot()hist()scatter() 等,这些函数可以帮助我们绘制各种统计图表,以更加直观地了解数据的分布、趋势等。

以下是一个例子:

先创建一个数据集用于演示

import pandas as pd

# 创建数据集
data = {
    '英雄名称': ['鲁班七号', '孙尚香', '铠', '亚瑟', '李白', '赵云', '露娜', '安琪拉'],
    '英雄定位': ['射手', '射手', '战士', '战士', '刺客', '战士', '刺客', '法师'],
    '英雄攻击类型': ['物理', '物理', '物理', '物理', '物理', '物理', '物理', '魔法'],
    '英雄上手难度': [2, 2, 2, 2, 3, 2, 2, 4]
}
df = (data)

# 选择列
df[['英雄名称', '英雄定位', '英雄攻击类型', '英雄上手难度']]

输出结果如下:

 英雄名称  英雄定位 英雄攻击类型  英雄上手难度
0  鲁班七号    射手      物理         2
1   孙尚香    射手      物理         2
2      铠    战士      物理         2
3     亚瑟    战士      物理         2
4     李白   刺客       物理         3
5     赵云    战士      物理         2
6     露娜   刺客       物理         2
7    安琪拉   法师      魔法         4

数据查看函数

# 查看数据集的前3行
(3)

# 查看数据集的后3行
(3)

# 查看数据集的形状(行数和列数)


# 查看数据集的列名


# 查看数据集的索引


# 查看数据集的数据类型


# 查看数据集的摘要统计信息
()

数据选择函数

#选择某一列数据
df['英雄名称']

#选择多列数据
df[['英雄名称', '英雄定位']]

#根据条件选择行数据
df[df['英雄上手难度'] < 3]

#多条件筛选
df[(df['英雄上手难度'] < 3) & (df['英雄攻击类型'] == '物理')]

#根据行索引选择数据
[0:2]
# 选择第3行第2列的数据
[2, 1]

#使用 loc 函数
# 选择第一行和第一列的值
[0, '英雄名称']

# 选择第二到第四行和第二到第三列的值
[1:3, '英雄定位':'英雄攻击类型']

# 选择英雄上手难度为2的行的所有列的值
[df['英雄上手难度'] == 2, :]

# 选择英雄攻击类型为物理,且英雄上手难度为2的行的所有列的值
[(df['英雄攻击类型'] == '物理') & (df['英雄上手难度'] == 2), :]

#使用 iloc 函数
# 选择第一行和第一列的值
[0, 0]

# 选择第二到第四行和第二到第三列的值
[1:4, 1:3]

# 选择英雄上手难度为2的行的所有列的值
[(df['英雄上手难度'] == 2).values, :]

# 选择英雄攻击类型为物理,且英雄上手难度为2的行的所有列的值
[((df['英雄攻击类型'] == '物理') & (df['英雄上手难度'] == 2)).values, :]

纸上得来终觉浅,绝知此事要躬行。

本例中未给出运行结果,可在自己电脑运行试下,或者在其它数据集上再进行尝试。

——AI辅助创作。