head() / tail()查看前 n 行或后 n 行,默认 5 行。快速确认数据格式和内容。
df.head(10) # 前10行
df.tail(3) # 后3行
.shape返回 (行数, 列数) 的元组,了解数据集规模。
print(df.shape)
# 输出:(1000, 20)
.columns查看所有列名,便于后续操作。
print(df.columns.tolist())
.dtypes每列的数据类型,如 int64, float64, object 等。
print(df.dtypes)
info()打印 DataFrame 的摘要:列名、非空计数、数据类型、内存使用。
df.info()
describe()对数值列生成描述性统计:计数、均值、标准差、四分位数等。
df.describe()
创建一个包含不同类型列的 DataFrame 并应用以上方法:
import pandas as pd
import numpy as np
# 生成示例数据
df = pd.DataFrame({
'姓名': ['张三', '李四', '王五', '赵六', '陈七'],
'年龄': [28, 35, None, 42, 29],
'工资': [8000, 12000, 9500, None, 11000],
'入职日期': pd.date_range('2020-01-01', periods=5),
'部门': ['技术', '销售', '技术', '管理', '销售']
})
print("====== 原始数据 ======")
print(df)
print("\n====== head() 前3行 ======")
print(df.head(3))
print("\n====== shape ======")
print(f"行数: {df.shape[0]}, 列数: {df.shape[1]}")
print("\n====== columns ======")
print(df.columns.tolist())
print("\n====== dtypes ======")
print(df.dtypes)
print("\n====== info() ======")
df.info()
print("\n====== describe() (数值列) ======")
print(df.describe())
print("\n====== describe(include='all') (包含非数值列) ======")
print(df.describe(include='all'))
df['列名'].value_counts()
df['列名'].unique()
df['列名'].nunique()
df['列名'].min() / .max()
df['列名'].mean() / .median()
df.corr() (相关系数矩阵)
# 查看部门的分布
print(df['部门'].value_counts())
# 查看工资列的统计
print(df['工资'].describe())
# 查看工资与年龄的相关系数
print(df[['年龄','工资']].corr())
describe() 默认忽略缺失值(NaN),计数列会显示非空数量。info() 会显示每列的非空计数,帮助你发现缺失数据。
object,可能包含非数字字符串,需要进一步清洗。
info() 显示的内存使用量可以帮助你判断是否需要优化数据类型(如将 float64 转为 float32)。
df.info() 了解规模与缺失,df.head() 查看样例,df.describe() 获取数值分布。这些简单操作能帮你快速决定下一步清洗或分析的方向。