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

Python pandas常见函数

Pandas库

      • 基本概念
      • 读取数据
      • 数据处理
      • 数据输出
      • 其他常用功能

pip install pandas

基本概念

  1. 数据结构

    • Series: 一维数据结构

      import pandas as pd
      data = pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd'])
      print(data)
      
    • DataFrame: 二维数据结构

      data = {'Name': ['Alice', 'Bob', 'Charlie'],'Age': [25, 30, 35]
      }
      df = pd.DataFrame(data)
      print(df)
      

读取数据

  1. 从 CSV 文件读取数据

    df = pd.read_csv('file.csv')
    print(df.head())
    
  2. 从 Excel 文件读取数据

    df = pd.read_excel('file.xlsx', sheet_name='Sheet1')
    print(df.head())
    
  3. 从 SQL 查询读取数据

    import sqlite3
    conn = sqlite3.connect('database.db')
    df = pd.read_sql_query('SELECT * FROM table', conn)
    print(df.head())
    

数据处理

  1. 查看数据

    • 查看前 5 行

      print(df.head())
      
    • 查看后 5 行

      print(df.tail())
      
    • 查看数据的简要信息

      print(df.info())
      
    • 查看数据的统计摘要

      print(df.describe())
      
  2. 选择和过滤数据

    • 按列选择

      print(df['Name'])
      
    • 按行选择

      print(df.loc[0])  # 按标签
      print(df.iloc[0])  # 按位置
      
    • 条件过滤

      filtered_df = df[df['Age'] > 30]
      print(filtered_df)
      
  3. 数据清洗

    • 处理缺失值

      df = df.dropna()  # 删除含缺失值的行
      df = df.fillna(0)  # 将缺失值填充为 0
      
    • 去重

      df = df.drop_duplicates()
      
    • 数据类型转换

      df['Age'] = df['Age'].astype(float)
      
  4. 数据操作

    • 添加列

      df['Country'] = 'USA'
      
    • 删除列

      df = df.drop('Country', axis=1)
      
    • 重命名列

      df = df.rename(columns={'Name': 'Full Name'})
      
  5. 数据聚合

    • 按组聚合

      grouped_df = df.groupby('Country').agg({'Age': 'mean'})
      print(grouped_df)
      
    • 合并数据

      df1 = pd.DataFrame({'ID': [1, 2], 'Value': ['A', 'B']})
      df2 = pd.DataFrame({'ID': [1, 2], 'Score': [85, 90]})
      merged_df = pd.merge(df1, df2, on='ID')
      print(merged_df)
      
    • 拼接数据

      df1 = pd.DataFrame({'Name': ['Alice', 'Bob']})
      df2 = pd.DataFrame({'Name': ['Charlie', 'David']})
      concatenated_df = pd.concat([df1, df2], ignore_index=True)
      print(concatenated_df)
      
  6. 数据排序

    • 按列排序

      sorted_df = df.sort_values(by='Age')
      print(sorted_df)
      
    • 排序方向

      sorted_df = df.sort_values(by='Age', ascending=False)
      print(sorted_df)
      

数据输出

  1. 保存为 CSV 文件

    df.to_csv('output.csv', index=False)
    
  2. 保存为 Excel 文件

    df.to_excel('output.xlsx', index=False)
    

其他常用功能

  1. 透视表

    pivot_table = pd.pivot_table(df, values='Age', index='Country', aggfunc='mean')
    print(pivot_table)
    
  2. 时间序列

    • 日期时间转换

      df['Date'] = pd.to_datetime(df['Date'])
      
    • 设置时间索引

      df = df.set_index('Date')
      

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【数据结构初阶】队列
  • K8S Ingress 常用配置
  • vue项目打包问题
  • 题解:力扣1567 - 返回乘积为正数的最长子数组
  • 串行并行数据转换
  • WEB渗透Bypass篇-常规函数绕过
  • 网络安全与国家安全
  • 力扣Hot100-994腐烂的橘子
  • 007 | 期权定价与布莱克-斯科尔斯计算
  • git pull 注意事项
  • 【hadoop】常用命令
  • 四、数字图像处理Matlab实验 第二章 数字图像基础
  • 猫头虎推荐:人类通向AGI之路 史上最重磅的20篇论文你值得学习
  • Docker快速入门指南
  • 简单介绍一下 git reflog
  • 「译」Node.js Streams 基础
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Android开源项目规范总结
  • chrome扩展demo1-小时钟
  • ES6之路之模块详解
  • gulp 教程
  • java小心机(3)| 浅析finalize()
  • Nodejs和JavaWeb协助开发
  • TypeScript迭代器
  • vue--为什么data属性必须是一个函数
  • 工程优化暨babel升级小记
  • 基于axios的vue插件,让http请求更简单
  • 运行时添加log4j2的appender
  • Java数据解析之JSON
  • ​ArcGIS Pro 如何批量删除字段
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • #调用传感器数据_Flink使用函数之监控传感器温度上升提醒
  • (03)光刻——半导体电路的绘制
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (function(){})()的分步解析
  • (ZT)薛涌:谈贫说富
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (三)Kafka离线安装 - ZooKeeper开机自启
  • (贪心) LeetCode 45. 跳跃游戏 II
  • (五)网络优化与超参数选择--九五小庞
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (转)大型网站架构演变和知识体系
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .net SqlSugarHelper
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .net 生成二级域名
  • .net快速开发框架源码分享
  • .NET框架
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...
  • [1159]adb判断手机屏幕状态并点亮屏幕
  • [20190416]完善shared latch测试脚本2.txt
  • [2021ICPC济南 L] Strange Series (Bell 数 多项式exp)
  • [30期] 我的学习方法
  • [acwing周赛复盘] 第 69 场周赛20220917