当前位置: 首页 > news >正文

pandas常用操作

`pandas`是Python中用于数据操作和分析的强大库。以下是一些常用的操作:

### 1. 读取数据
- **从CSV文件读取**:
  ```python
  import pandas as pd
  df = pd.read_csv('path/to/file.csv')
  ```
- **从Excel文件读取**:
  ```python
  df = pd.read_excel('path/to/file.xlsx', sheet_name='Sheet1')
  ```

### 2. 数据查看
- **显示前几行**:
  ```python
  df.head()  # 默认显示前5行
  ```
- **显示后几行**:
  ```python
  df.tail()
  ```
- **查看数据信息**:
  ```python
  df.info()
  ```
- **基本统计信息**:
  ```python
  df.describe()
  ```

### 3. 数据选择
- **选择列**:
  ```python
  df['column_name']
  df.column_name
  ```
- **选择多列**:
  ```python
  df[['column1', 'column2']]
  ```
- **基于条件选择行**:
  ```python
  df[df['column'] > 0]
  ```
- **选择行和列**:
  ```python
  df.loc[row_indexer, column_indexer]  # 标签索引
  df.iloc[row_indexer, column_indexer]  # 位置索引
  ```

### 4. 数据处理
- **删除列**:
  ```python
  df.drop('column_name', axis=1, inplace=True)
  ```
- **删除行**:
  ```python
  df.drop(0, axis=0, inplace=True)  # 删除第一行
  ```
- **填补缺失值**:
  ```python
  df.fillna(value, inplace=True)
  ```
- **重命名列**:
  ```python
  df.rename(columns={'old_name': 'new_name'}, inplace=True)
  ```
- **更改列类型**:
  ```python
  df['column_name'] = df['column_name'].astype('int')
  ```

### 5. 数据聚合与分组
- **分组操作**:
  ```python
  grouped = df.groupby('column_name')
  grouped.mean()  # 按组计算平均值
  ```
- **应用函数**:
  ```python
  df['column_name'].apply(lambda x: function(x))
  ```

### 6. 数据合并
- **合并数据框**:
  ```python
  pd.concat([df1, df2])  # 按行合并
  pd.merge(df1, df2, on='key_column')  # 按列合并
  ```

### 7. 数据清洗
- **处理重复行**:
  ```python
  df.drop_duplicates(inplace=True)
  ```
- **处理缺失数据**:
  ```python
  df.dropna()  # 删除有缺失值的行
  ```

### 8. 数据保存
- **保存为CSV文件**:
  ```python
  df.to_csv('output.csv', index=False)
  ```
- **保存为Excel文件**:
  ```python
  df.to_excel('output.xlsx', index=False)
  ```

这些只是`pandas`库中最常用的一些操作。`pandas`的功能非常丰富,涵盖了数据处理的方方面面,具体使用时可以参考其官方文档或社区资源来解决更复杂或特定的问题。

http://www.lryc.cn/news/539795.html

相关文章:

  • linux使用
  • 基于豆瓣2025电影数据可视化分析系统的设计与实现
  • 基于Python的深度学习音乐推荐系统(有配套论文)
  • 远程计算机无conda情况下配置python虚拟环境
  • 强化学习-价值学习算法
  • Golang深度学习
  • 基于推荐算法的在线课程推荐系统设计与实现
  • es和kibana安装
  • 本地部署Anything LLM+Ollama+DeepSeek R1打造AI智能知识库教程
  • zyNo.25
  • Spring框架基本使用(Maven详解)
  • 关于前后端分离跨域问题——使用DeepSeek分析查错
  • 三层渗透测试-DMZ区域 二三层设备区域
  • 领航Linux UDP:构建高效网络新纪元
  • 基于MATLAB的均匀面阵MUSIC算法DOA估计仿真
  • HTML/CSS中后代选择器
  • 深入解析「卡顿帧堆栈」 | UWA GPM 2.0 技术细节与常见问题
  • 推荐几款较好的开源成熟框架
  • Mysql全文索引
  • 配置终端代理
  • 51单片机学习之旅——在LCD1602上显示时钟
  • Jest单元测试
  • C++字符串处理指南:从基础操作到性能优化——基于std::string的全面解析
  • JVM类加载过程详解:从字节码到内存的蜕变之旅
  • 【力扣Hot100详解】解锁“字母异位词分组”:用排序魔法一键通关力扣!
  • vite配置scss全局变量
  • Spring Boot01(注解、)---java八股
  • 2.19学习记录
  • 汽车免拆诊断案例 | 2013 款奔驰 S300L 车起步时车身明显抖动
  • 【HeadFirst系列之HeadFirst设计模式】第5天之工厂模式:比萨店的秘密武器,轻松搞定对象创建!