Pandas 常用函数详解

pandas 是 Python 中用于数据处理和分析的强大库,下面为你详细介绍一些 pandas 常用函数。

1. 数据读取与写入函数

read_csv

用于读取 CSV 文件并将其转换为 DataFrame 对象。
 
import pandas as pd

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

你可以通过指定参数来定制读取过程,例如指定分隔符、编码方式等。
 
# 指定分隔符为制表符,编码为 UTF - 8
df = pd.read_csv('data.csv', sep='\t', encoding='utf-8')

to_csv

将 DataFrame 对象写入 CSV 文件。
 
# 创建一个示例 DataFrame
data = {
    'Name': ['Alice', 'Bob'],
    'Age': [25, 30]
}
df = pd.DataFrame(data)

# 将 DataFrame 写入 CSV 文件
df.to_csv('output.csv', index=False)

index=False 表示不将索引写入文件。

2. 数据探查函数

head 和 tail

  • head:返回 DataFrame 或 Series 的前几行,默认返回前 5 行。
print(df.head())
  • tail:返回 DataFrame 或 Series 的后几行,默认返回后 5 行。
print(df.tail())

info

显示 DataFrame 的基本信息,包括列名、数据类型、非空值数量等。
 
df.info()

describe

生成描述性统计信息,对于数值列,会计算计数、均值、标准差、最小值、25% 分位数、中位数、75% 分位数和最大值。
 
print(df.describe())

3. 数据选择与过滤函数

loc 和 iloc

  • loc:通过标签(行名和列名)来选择数据。
# 选择第一行和 'Name' 列的数据
print(df.loc[0, 'Name'])

  • iloc:通过整数位置来选择数据。
# 选择第一行和第一列的数据
print(df.iloc[0, 0])

query

用于根据条件筛选数据。
 
# 筛选出年龄大于 26 的数据
filtered_df = df.query('Age > 26')
print(filtered_df)

4. 数据处理函数

drop

用于删除行或列。
# 删除 'Age' 列
new_df = df.drop('Age', axis=1)
print(new_df)

axis = 1 表示删除列,axis = 0 表示删除行。

fillna

用于填充缺失值。
 
# 创建一个包含缺失值的 DataFrame
import numpy as np
data = {
    'Name': ['Alice', 'Bob', np.nan],
    'Age': [25, np.nan, 30]
}
df = pd.DataFrame(data)

# 使用 0 填充缺失值
filled_df = df.fillna(0)
print(filled_df)

replace

用于替换数据中的值。
# 将 'Alice' 替换为 'Alicia'
replaced_df = df.replace('Alice', 'Alicia')
print(replaced_df)

5. 数据合并与分组函数

merge

用于合并两个 DataFrame,类似于 SQL 中的 JOIN 操作。
 
# 创建两个示例 DataFrame
data1 = {
    'ID': [1, 2],
    'Name': ['Alice', 'Bob']
}
df1 = pd.DataFrame(data1)

data2 = {
    'ID': [1, 2],
    'Age': [25, 30]
}
df2 = pd.DataFrame(data2)

# 根据 'ID' 列合并两个 DataFrame
merged_df = pd.merge(df1, df2, on='ID')
print(merged_df)

groupby

用于对数据进行分组,并可以对分组后的数据进行聚合操作。
# 创建一个示例 DataFrame
data = {
    'Category': ['A', 'B', 'A', 'B'],
    'Value': [10, 20, 30, 40]
}
df = pd.DataFrame(data)

# 按 'Category' 列分组,并计算每组的平均值
grouped = df.groupby('Category').mean()
print(grouped)

6. 数据排序函数

sort_values

用于对 DataFrame 或 Series 按指定列的值进行排序。
# 按 'Age' 列升序排序
sorted_df = df.sort_values(by='Age')
print(sorted_df)
你可以通过设置 ascending=False 来进行降序排序。

posted on 2025-03-24 08:55  阿陶学长  阅读(156)  评论(0)    收藏  举报