Python中Pandas库的数据处理与分析

Python中Pandas库的数据处理与分析
最新回答
唇角那吻痕

2021-11-24 11:01:40

Pandas是Python中用于数据处理与分析的核心库,其核心功能围绕数据结构数据读写数据操作展开。以下是关键内容的系统总结:

一、核心数据结构
  1. Series

    定义:一维带标签数组,支持数值、字符串等数据类型。

    示例

    import pandas as pds = pd.Series([1, 3, 5, np.nan, 6, 8]) # 自动生成索引0-5

    特点:可通过索引访问数据(如s[0]),支持向量化操作。

  2. DataFrame

    定义:二维表格型结构,含行索引和列索引,每列可独立指定数据类型。

    示例

    data = {'Country': ['Belgium', 'India'], 'Population': [11190846, 1303171035]}df = pd.DataFrame(data, columns=["Country", "Population"])

    特点:类似电子表格或SQL表,支持多列混合类型(如数值+字符串)。

二、数据读取与写入
  1. 读取数据

    支持格式:CSV、Excel、JSON、SQL等。

    常用函数

    df = pd.read_csv('data.csv') # 读取CSVdf = pd.read_excel('data.xlsx') # 读取Exceldf = pd.read_sql('SELECT * FROM table', con) # 读取SQL
  2. 写入数据

    示例

    df.to_csv('output.csv', index=False) # 保存为CSV(不保留索引)df.to_excel('output.xlsx') # 保存为Excel
三、数据选择与操作
  1. 基础选择

    列选择:df['列名'] 或 df.列名(如df.Name)。

    行选择

    按位置:df.iloc[0](第1行)。

    按条件:df[df.Age > 20](筛选Age>20的行)。

  2. 数据聚合

    统计函数

    df['Age'].sum() # 求和df['Country'].value_counts() # 统计各值出现次数

    分组聚合

    df.groupby('Country')['Age'].mean() # 按国家分组计算平均年龄
  3. 缺失值处理

    检测缺失值:df.isnull()。

    填充/删除

    df.fillna(0) # 用0填充缺失值df.dropna() # 删除含缺失值的行
四、高级功能
  1. 数据合并

    合并DataFrame

    pd.concat([df1, df2]) # 纵向合并pd.merge(df1, df2, on='Key') # 类似SQL JOIN
  2. 数据透视表

    示例

    pd.pivot_table(df, values='Age', index='Country', aggfunc='mean')
  3. 时间序列处理

    转换时间戳

    df['Date'] = pd.to_datetime(df['Date'])df.set_index('Date', inplace=True) # 设置为时间索引
五、应用场景示例
  • 数据清洗:处理缺失值、重复值(df.drop_duplicates())。
  • 分析报告:结合matplotlib可视化(如df.plot())。
  • 自动化处理:批量读取多个CSV文件并合并分析。
总结

Pandas通过SeriesDataFrame构建数据结构,提供高效读写(支持多种格式)、灵活选择(行列操作、条件筛选)及强大分析(分组、透视、时间序列)能力。其设计简洁但功能强大,是Python数据科学领域的基石工具。