
Pandas 是 Python 数据处理中最为常用的库之一,它提供了强大的数据结构和丰富的函数用于数据分析。Pandas 的核心数据结构是 Series 和 DataFrame。Series 是一个一维的带标签的数组对象,而 DataFrame 是一个二维的表格型数据结构。以下是 Pandas 中一些常用的函数和方法,帮助你在日常数据处理中得心应手。
read_csv(): 读取 CSV 文件。to_csv(): 将 DataFrame 写入到 CSV 文件。read_excel(): 读取 Excel 文件。to_excel(): 将 DataFrame 导出到 Excel 文件。read_sql(): 读取 SQL 数据库中的数据。to_sql(): 将 DataFrame 写入到 SQL 数据库中。read_json(): 读取 JSON 格式的数据。to_json(): 将 DataFrame 转换为 JSON 格式。head(): 查看 DataFrame 的前几行。tail(): 查看 DataFrame 的后几行。info(): 获取 DataFrame 的基本信息,如数据类型、缺失值等。describe(): 对数值列进行统计汇总。shape: 查看 DataFrame 的维度。columns: 获取 DataFrame 的列标签。index: 返回行索引。iloc[]: 通过行号选择数据。loc[]: 根据标签选取数据。at[]: 快速获取单个值。iat[]: 按位置快速获取单个值。filter(): 根据条件过滤数据。dropna(): 删除缺失值。fillna(): 用指定值填充缺失值。drop_duplicates(): 删除重复数据。replace(): 替换数据。astype(): 转换数据类型。rename(): 重命名行或列。apply(): 对每个元素或列应用一个函数。map(): 映射新值。groupby(): 根据列进行分组操作。pivot_table(): 创建数据透视表。merge(): 合并 DataFrame。concat(): 连接多个 DataFrame。sort_values(): 按值排序。rank(): 计算排名。to_datetime(): 将日期字段转换为 datetime 类型。resample(): 重新采样时间序列。shift(): 移动数据。rolling(): 滚动窗口操作。假设我们有一个 CSV 文件,内容是某公司的员工信息,包括姓名、年龄、部门、工资等,我们需要对这些数据进行基本的处理和分析。
import pandas as pd
# 读取CSV文件
df = pd.read_csv('employees.csv')
print(df.head())
# 查看DataFrame的信息
print(df.info())
# 统计汇总
print(df.describe())
# 选择“年龄”列
ages = df['age']
# 选择前两行和前三列
subset = df.iloc[:2, :3]
# 删除所有有缺失值的行
df_cleaned = df.dropna()
# 用平均值填充“工资”列的缺失值
df['salary'].fillna(df['salary'].mean(), inplace=True)
# 计算每个部门的平均工资
avg_salary = df.groupby('department')['salary'].mean()
# 增加一个新列,表示工资级别
df['salary_level'] = pd.cut(df['salary'], bins=[0, 5000, 10000, 15000], labels=['Low', 'Medium', 'High'])
虽然 Pandas 本身并没有直接的可视化功能,但它与 Matplotlib 和 Seaborn 等可视化库集成良好。
import matplotlib.pyplot as plt
# 画出不同部门的平均工资
avg_salary.plot(kind='bar')
plt.title('Average Salary by Department')
plt.xlabel('Department')
plt.ylabel('Average Salary')
plt.show()
这些函数和方法涉及 Pandas 的常用操作,帮助我们在各种数据处理场景中灵活应对。在实际应用中,根据具体需求,还可以组合这些方法以实现更复杂的数据分析任务。Pandas 的丰富功能及其与其他数据科学库的良好集成,使其成为数据科学家和分析师的强大工具。在深入学习中,实际操作和实践至关重要,多使用这些函数将会大幅提高数据处理效率。