pandas dataframe 用法
Pandas 是一个强大的 Python 数据分析库,而 DataFrame 是 Pandas 中最重要的数据结构之一。DataFrame 就像电子表格或 SQL 表格,它允许你以一种便捷的方式对数据进行操作、查询和分析。
创建 DataFrame
- 从字典创建:
import pandas as pd
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 32, 37],
'City': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)
- 从 CSV 文件读取:
df = pd.read_csv('data.csv')
- 从 Excel 文件读取:
df = pd.read_excel('data.xlsx')
查看数据
- 查看前几行:
print(df.head()) # 默认查看前5行
print(df.head(10)) # 查看前10行
- 查看数据类型:
print(df.dtypes)
- 查看基本统计信息:
print(df.describe())
选择和过滤数据
- 选择列:
ages = df['Age']
print(ages)
- 选择多列:
subset = df[['Name', 'City']]
print(subset)
- 选择行(按索引):
first_row = df.iloc[0] # 按位置选择
specific_rows = df.iloc[1:3] # 选择一段范围
- 选择行(按条件):
adults = df[df['Age'] > 30]
print(adults)
数据操作
- 添加新列:
df['Salary'] = [70000, 80000, 120000]
- 删除列:
df = df.drop('Salary', axis=1) # axis=1 表示列
- 修改数据:
df.loc[0, 'Name'] = 'Alicia'
- 缺失值处理:
df = df.dropna() # 删除包含 NaN 的行
df = df.fillna(value=0) # 用指定值填充 NaN
分组和聚合
- 按列分组:
grouped = df.groupby('City')
print(grouped['Age'].mean()) # 计算每个城市的平均年龄
- 聚合操作:
result = df.groupby('City').agg({'Age': 'mean', 'Salary': 'sum'})
print(result)
数据排序
- 按列排序:
df = df.sort_values(by='Age') # 升序
df = df.sort_values(by='Age', ascending=False) # 降序
保存和导出
- 保存到 CSV 文件:
df.to_csv('new_data.csv', index=False)
- 保存到 Excel 文件:
df.to_excel('new_data.xlsx', index=False)
这些操作展示了 Pandas DataFrame 的基础用法。在实际的分析中,Pandas 还支持更复杂的操作和与其他数据源的整合。探索 Pandas 的文档(Pandas Documentation)可以帮助你发掘更多的功能。