pandas

news2024/11/26 3:08:50

pandas

  • 数据结构
  • 生成数据
    • 创建 Series
    • 创建 DataFrame
  • 数据处理
    • 相关方法功能介绍

数据结构

描述举例
Series带有标签的一维数组在这里插入图片描述
DataFrame带有标签的二维数组在这里插入图片描述

在这里插入图片描述

生成数据

创建 Series

# s = pd.Series(data, index=index)
s1 = pandas.Series(['张三','李四','王五','郑六'])
s2 = pandas.Series(['张三','李四','王五','郑六'],index=['a','b','c','d'])

在这里插入图片描述

创建 DataFrame

# df = pd.DataFrame(data=None, index=None, columns=None)
import pandas
df = pandas.DataFrame(
   {
      '姓名':['张三','李四','王五'],
      '年龄':['21','30','29'],
      '职业':['学生','警察','医生']
    }
)

在这里插入图片描述

数据处理

Pandas可以将指定格式的数据读取到DataFrame中,并将DataFrame输出为指定格式的文件

在这里插入图片描述

# 读函数 df=pandas.read_xxx(fileName)
pandas.read_csv('data1.csv')

# 输出函数 df=pandas.to_xxx(fileName)
pandas.to_csv('data2.csv')

相关方法功能介绍

import pandas
df = pandas.read_excel('./data1.xlsx')
方法描述
df.cloName /
df[ [‘cloName1’,‘cloName2’] ]
取对应列
df.filter(items=[‘cloName1’,‘cloName2’]) /
df.filter(regex=‘^a’, axis=0).filter(like=‘Q’, axis=1)
选择对应列 / 索引以a开头列名有Q的行
df.axes返回一个列内容和行内容组成的列表
df.head() /.tail() /.sample() / df[:3]返回前默认5行 / 后默认5行 / 随机1行 / 前3行
df.loc[[0,5,10]] /
df.loc[0:5,[‘cloName1’,‘cloName2’]] /
df.loc[ df[“cloName1”]==89 ]
返回0,5,10行 / 返回cloName1 2 前5行 / 返回cloName1=89的行
df.query(‘cloName1 > 90’)返回cloName1 > 90的所有行
df.shape返回 一个 (行数,列数) 的元组
df.cloName.mean()若该列数据类型为int,则可以计算该列平均值
df.cloName.add() / .sub() / .mul() / .div()对数据进行广播式加/减/乘/除
df.nunique()去重
df.truncate(before=x, after=y)将x-y行以外数据剔除
df.select_dtypes(include=[‘int’]) /
df.select_dtypes(exclude=[‘int’])
选择 / 排除 int类型数据
df.replace()替换数据
df.fillna()填充空值
df.rename(columns={‘cloName1’:‘cloName2’})修改cloName1列名为cloName2
df.assign(k=v)指定一个新列,k为新列的列名,v为此列的值
df.dropna() /
df.dropna(axis=‘columns’) /
df.dropna(how=‘all’) /
df.dropna(thresh=2) /
df.dropna(inplace=True)
一行中有一个缺失值就删除 /
只保留全有值的列 /
行或列全没值才删除 /
至少有两个空值时才删除 /
删除并使替换生效
df.where(df > 70)将大于70数据筛选出来,不满足的位置填充为NaN,df.where(df==9999999, np.where(df>=60, ‘合格’, ‘不合格’)) 使用NumPy弥补panda的不足,大于等于60值为及格,小于则置为不及格
import pandas
df = pandas.read_excel('./data.xlsx')

# 使用迭代
# .iterrows()
for index ,row in df.iterrows():
    print(index ,row.Q1,row['name'])
# 结果
0 89 Liver
1 36 Arry
2 57 Ack
3 93 Eorge
4 65 Oah
5 24 Harlie
6 61 Acob
7 9 Lfie

# .itertuples()
# 可以在itertuples()内进行筛选,df.itertuples(colName1='xxx',colName2>yyy)
for index ,row in df.itertuples():
    print(row)
# 结果
Pandas(Index=0, name='Liver', team='E', Q1=89, Q2=21, Q3=24, Q4=64)
Pandas(Index=1, name='Arry', team='C', Q1=36, Q2=37, Q3=37, Q4=57)
Pandas(Index=2, name='Ack', team='A', Q1=57, Q2=60, Q3=18, Q4=84)
Pandas(Index=3, name='Eorge', team='C', Q1=93, Q2=96, Q3=71, Q4=78)
Pandas(Index=4, name='Oah', team='D', Q1=65, Q2=49, Q3=61, Q4=86)
Pandas(Index=5, name='Harlie', team='C', Q1=24, Q2=13, Q3=87, Q4=43)
Pandas(Index=6, name='Acob', team='B', Q1=61, Q2=95, Q3=94, Q4=8)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/615341.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电动力学专题:辐射的频谱分析

辐射的频谱分析 韧致辐射就是带电粒子入射到物质靶上时,它和靶内原子中的电子和原子核碰撞,在碰撞过程减速而产生的辐射。X射线的连续谱部分就体现了韧致辐射的性质。在这个过程中的带电粒子速度远小于光速 低速运动带电粒子在碰撞过程中的辐射频谱 频…

设备指纹系列--前端篇

基础篇请看:设备指纹系列–基础篇 我们接着前文继续写关于设备指纹前端接入方面的内容。话不多说,直接步入正题。 我们会在下文展示5种前端接入的方式,包括web接入、安卓接入、ios接入、微信小程序接入以及支付宝小程序接入。 Web接入 第…

SpringBoot整合Mybatis-Plus多数据源

一、前言 随着业务的不断扩展和复杂度的增加,我们在开发过程中往往需要访问多个数据库。 比如: 我们可能需要同时访问主数据库和从数据库,或者访问多个独立的数据库来处理不同的业务逻辑。这时候,我们就需要使用多数据源来实现对…

【python脚本】编写

这里写自定义目录标题 欢迎使用python来编写脚本环境搭建 欢迎使用python来编写脚本 测试方向,测试报告,单元测试 环境搭建 python环境搭建 下载地址 https://www.python.org/ 文档 https://docs.python.org/3/ pycharm的环境 使用chatgpt来实现代码功…

来了解一下白盒测试,黑盒测试,灰盒测试吧(超详解~)

根据被测对象的不同,软件测试可以分为白盒测试、黑盒测试、灰盒测试三种方式。那么,这三种测试方式具体是如何运行的?各有什么特点?下面,跟着静姐一起了解一下吧! 01、白盒测试 WHITE BOX ●概念&#x…

实训第二天

创建数据库指定字符集 create database firstdb default character set utf8; 主键约束(primary key)不能为空,唯一约束(unique key)可以为空,但只允许一个空值 查看表结构 desc 表名 主表从表 被引用的表是主表 比如班级…

管理类联考•逻辑——解题技巧汇总

管理类联考•逻辑——解题技巧汇总 第一部分 形式逻辑 第1章 复言命题 母题1 充分与必要 充分条件 A是B的充分条件,记作A→B,读作“A推B”,是指假如事件A发生了,事件B一定发生。典型关联词: “如果…那么…。” 必要条件 A是B的必要条件,记作B→A,说明A的发生对于B的发生是…

电脑如何通过手机上网?

有时我们的电脑会出现没有网络,或者断网的现象,这时如果必须使用电脑,我们可以通过手机流量来上网,那么要如何操作呢?下面我们就来了解一下。 方法1. 电脑连接手机热点上网 该方法适用于笔记本电脑和有无线网卡的台式…

安全响应中心 — 垃圾邮件事件报告(6.5)

2023年6月 第二周 样本概况 ✅ 类型1: 携带钓鱼链接的伪造传票邮(URLPhish) 近期,安全团队捕获到一类新的伪造51某票的钓鱼邮件,内容上为伪造的律师事务所传票信息,并诱导收件人点击钓鱼链接。代表样本如下: 结合情…

医院检验系统LIS系统源码

医院检验系统LIS是HIS系统的一个重要的组成部分,其主要功能是将检验的实验仪器传出的检验数据经分析后,生成检验报告,通过网络存储在数据库中,使医生能够方便、及时的看到患者的检验结果,从现在的应用来看,…

开发物联网平台需要多少费用?

物联网开发技术是当今最热门的技术之一,在许多领域都有巨大的商业价值。随着物联网技术的迅速发展,这对企业来说是一个很好的机会,可以充分利用这些技术来提高其效率和生产力。 那么,开发物联网平台需要多少钱呢?答案是…

Linux工具之htop(含移植到arm-linux系统)

文章目录 介绍安装使用一些参数讲解功能键说明一些快捷键一些指令参数 拓展:Linux进程PRI与NI值拓展:VIRT(虚拟内存)RES(常驻内存)和SHR(共享内存)拓展:编译成应用放到开发板上使用源码下载解压编译 介绍 Htop是一个免费的(GPL&a…

毕业2年,月薪就有30K,太卷了吧......

想起两年前交流过的一个应届生,当时他刚毕业技术水平不高,进了一个小公司做软件测试实习工作。最近联系上了,不问不知道,一问吓一跳,他现在已经进了某一线大厂,月薪30K。这位朋友其实也没比别人强多少&…

708教室使用方法

一、教室平面图 708教室的布局如下,重要的设备已经在图中标出。总开关、一体机和机柜。   二、使用方法 2.1 房间机器上电 进门后首先走到“总开关位置”,将电匝闭合。 原来的开关如图所示,有3组开关,1号组开关用于控制插座、…

小程序自动化测试

背景 近期团队打算做一个小程序自动化测试的工具,期望能够做到业务人员操作一遍小程序后,自动还原之前的操作路径,并且捕获操作过程中发生的异常,以此来判断这次发布是否会影响小程序的基础功能。 上述描述看似简单,…

为什么黑客要攻击你的网站?如何才能保护网站不被攻击?

根据2023年一季度应用程序安全状况报告所披露的报告,今年来全球已经累计有超过1400多万个网站遭受了超过10亿次网络攻击,网络的安全风险依然在逐年不断提升。 几乎每个网站都面临风险,无论是简单的博客论坛、投资平台、小型的独立电商网站还是…

无需服务器,5分钟在公众号中接入ChatGPT

前言 在原先使用openAI的接口分别实现过微信聊天,语音对话等功能的基础上,我又将矛头指向了公众号,最近在github中找到了一个挺好玩的案例:公众号机器人,于是打算分享一下整个搭建过程 准备工作 微信公众号AirCode账…

三、基尔霍夫定理

目录 基本概念 基尔霍夫电流定理(KCL) 基尔霍夫电压定理(KVL) 总结 基本概念 1.支路 定义1:电路中每一个两端元件就称为一条支路 定义2:电路中通过同一电流的分支 2.结点 定义1:元件的连接…

spring实例化bean之循环依赖

serviceA里注入了serviceB,serviceB里又注入了serviceA,这样在实例化serviceA时,在doCreateBean时的populateBean时会先实例化serviceB,然后实例化serviceB,在serviceB的doCreateBean方法的populateBean又会去找servci…

什么是Linux shell—一个简单的案例

一句话概括:简单来说脚本就是将需要执行的命令保存到文本中,按照顺序执行(由上往下执行),shell脚本:shell脚本就是一些命令的集合。 一、创建第一个Shell脚本:输出helloworld 1.脚本格式 脚本…