Python—pandas笔记2

如题所述

第1个回答  2024-04-12

深入探索Python Pandas的世界:数据处理与操作实战


1. 数据统计与分析


利用pandas的强大功能,轻松对CSV数据进行统计分析:



    从CSV读取:df = pd.read_csv("文件路径")
    汇总统计:df.describe() 捕获列均值、最大值、最小值,细看:df["列名"].mean(),df["列名"].max(),df["列名"].min()
    独特值与频次:df["列名"].unique() 显示所有独特值,频率计算用 df["列名"].value_counts()
    关联与协方差:df.cov() 计算列间协方差,df.corr() 揭示相关性

2. 缺失值管理



    快速检测:isnull() 和 notnull() 确定空值位置
    数据清洗:dropna() 删除空值行或列,fillna() 智能填充空值

3. SettingWithCopyWarning解决方案



    遇到问题时,尝试使用链式操作:df["ymd"].str.startswith("2018-03") 会触发警告,改用 df.loc[condition,"新增列名"]=表达式 或复制子集处理:df_month = df[condition].copy() df_month["新增列名"]=表达式

4. 字符串处理与转换



    df["列名"].str 函数灵活操作:提取、替换、格式转换,如 df["中文日期"].str.replace("[年月日]", "")
    利用链式操作,如 df["列名"].str.startswith("条件").str.upper(),进行多步骤处理

5. 轴参数与操作



    drop: 删除行/列,mean: 划分轴计算平均值,如 df.mean(axis=0) 或 df.mean(axis=1)
    apply: 沿行或列应用函数,如 df.apply(get_sum_value, axis=1) 求和操作

6. Index优化与特性



    索引查询高效:O(1)唯一索引、O(logN)有序查找,全表O(N)随机访问
    实验显示:排序查询比随机查询速度快
    自动对齐:Series和DataFrame相加时,根据索引完美对齐

7. DataFrame融合与合并



    处理不同数据集:ratings.csv, users.csv, movies.csv
    数据融合:1:1,1:N(数据复制),M:N(结果翻倍)
    合并操作:left join, right join, inner join, outer join,如 pd.merge(df1, df2, on='键名')

示例:通过键关联电影评分、用户和电影信息,实现数据合并。


8. DataFrame操作实践



    使用pandas.concat合并数据,如 pd.concat([df1, df2], axis=0, join='outer')
    按行添加新列:df1 = DataFrame.append([[1,2],[3,4]], columns='AB')

9. Excel处理



    分割Excel:根据用户分批存储,逐个读取,合并至大DataFrame
    合并Excel:读取多份文件,添加来源标识,统一整合

通过以上步骤,你将掌握如何高效地使用pandas进行数据处理,无论是统计分析、缺失值处理,还是数据融合与合并,Pandas都能助你轻松应对。

相似回答