Pandas核心功能包括数据结构(Series、DataFrame)、读写文件、数据查看、选择索引、清洗、操作、分组聚合、合并连接及时间序列处理,系统掌握可应对多数数据分析任务。

Python中Pandas是数据处理和分析的核心库,广泛用于读取、清洗、转换和分析结构化数据。以下是Pandas主要知识点的系统整理,帮助快速掌握其核心功能。
1. 数据结构:Series 和 DataFrame
Series 是带标签的一维数组,支持任意数据类型。
• 创建方式:pd.Series(data, index=index)• 示例:
s = pd.Series([1, 3, 5], index=['a', 'b', 'c'])
s['a'] → 1
DataFrame 是二维表格型数据结构,类似Excel表格或SQL表。
• 创建方式:pd.DataFrame(data, columns=列名, index=索引)• 示例:
df = pd.DataFrame({'name': ['Alice', 'Bob'], 'age': [25, 30]})
2. 数据读取与写入
Pandas支持多种文件格式的输入输出操作。
立即学习“Python免费学习笔记(深入)”;
• 读取CSV:pd.read_csv('file.csv')• 读取Excel:pd.read_excel('file.xlsx')
• 读取JSON:pd.read_json('file.json')
• 写入文件:
df.to_csv('output.csv', index=False)
df.to_excel('output.xlsx')
常用参数:
sep=','(指定分隔符)
header=0(指定哪行为列名)
usecols=['col1', 'col2'](只读取指定列)
encoding='utf-8'
ShyPost企业管理系统支持电脑版+手机版+App,数据一站式统一后台管理,访问同一域名时,电脑打开为电脑版,手机打开为手机版。本系统是一套基于ASP的智能建站软件!产品具有界面新颖美观、动感时尚等特点,是一套服务于中小企业的CMS内容管理系统,软件使用门槛低,无须专业电脑知识,全后台操作管理,操作简单且功能强大,同时软件还具有极强的可扩展性,可以适应各行业不同的需求。
3. 数据查看与基本信息
• 查看前几行:df.head(n)• 查看后几行:df.tail(n)
• 查看列名:df.columns
• 查看索引:df.index
• 查看数据类型:df.dtypes
• 数据形状:df.shape
• 统计摘要:df.describe()(数值列均值、标准差等)
• 检查缺失值:df.isnull().sum()
4. 数据选择与索引
• 按列选择:df['col'] 或 df[['col1', 'col2']]
• 按行切片:
df[1:4]
• 使用 loc:按标签选择
df.loc[1, 'name']
df.loc[:, 'age' > 25]
• 使用 iloc:按位置选择
df.iloc[0, 1] → 第一行第二列
• 条件筛选:
df[df['age'] > 25]
5. 数据清洗
• 处理缺失值:df.dropna():删除含空值的行/列
df.fillna(value):用指定值填充
df.fillna(method='ffill'):向前填充
df.fillna(df.mean()):用均值填充数值列
• 处理重复值:
df.duplicated():返回布尔Series
df.drop_duplicates():删除重复行
• 类型转换:
df['age'] = df['age'].astype(int)
pd.to_datetime(df['date_col'])
6. 数据操作
• 添加列:df['new_col'] = df['col1'] + df['col2']
• 删除列或行:
df.drop('col_name', axis=1, inplace=True)
• 重命名列:
df.rename(columns={'old': 'new'}, inplace=True)
• 设置索引:
df.set_index('col', inplace=True)
df.reset_index(inplace=True)
7. 数据聚合与分组
• 分组操作:grouped = df.groupby('category')
grouped.mean()
grouped.size()
grouped.agg({'age': 'mean', 'salary': 'sum'})
• 常用聚合函数:
sum(), mean(), count(), max(), min(), std()
8. 合并与连接数据
• 拼接(concat):pd.concat([df1, df2], axis=0) # 上下拼接
pd.concat([df1, df2], axis=1) # 左右拼接
• 合并(merge):
pd.merge(df1, df2, on='key') # 内连接
pd.merge(df1, df2, on='key', how='left') # 左连接
pd.merge(df1, df2, left_on='key1', right_on='key2')
9. 时间序列处理
• 转换为时间类型:pd.to_datetime(df['date'])
• 设置时间为索引:
df.set_index('date', inplace=True)
• 重采样:
df.resample('M').mean() # 按月汇总
• 时间偏移:
df.index + pd.DateOffset(days=1)
10. 实用技巧
• 查看唯一值:df['col'].unique()
df['col'].nunique()
• 值计数:
df['col'].value_counts()
• 排序:
df.sort_values(by='col', ascending=False)
df.sort_index()
• 应用函数:
df['col'].apply(lambda x: x.upper())
df.apply(np.mean, axis=1)
基本上就这些。熟练掌握以上内容,就能应对大多数数据分析任务。多练习真实数据集(如CSV导入)能更快上手。不复杂但容易忽略的是索引设置和缺失值处理,建议在每步操作后打印shape或head验证结果。










