Python——Pandas库,超详细教程

Python——Pandas库,超详细教程

前言

1、Python的Pandas是一个基于Python构建的开源数据分析库,它提供了强大的数据结构和运算功能。

2、

  • Series:一维数组,类似于Numpy中的一维array,但具有索引标签,可以保存不同类型的数据,如字符串、布尔值、数字等。
  • DataFrame:二维表格型数据结构,与SQL表或Excel工作表类似,每列可以是不同的数据类型(如数值、字符串或日期),并且具有列名和行索引。DataFrame是Pandas的核心数据结构,提供了丰富的数据操作方法。

接下来我们将逐步介绍他的用法

一、导入Pandas库

        简写为pd

import pandas as pd

二、使用Series,创建一维数组

从0开始存储

三、index查看下标,values查看下标的值

注意:不知道标签和下标的区别请看目录五的解释

1、index的输出类似于range:

        start代表起始标签;stop代表结束标签(不会到这个值,到n-1值);step代表步长。

2、valuses:

        直接查看下标的值,记得是重0开始的值

四、使用index指定标签

注意:可以看到数组中1的标签不是默认值0了,而是标签5,如果利用想输出下标0,这时候会报错,我们要使用到 “iloc“ and ” loc“,请看五

五、iloc and loc的使用

解释:

1、iloc是原下标,也就是默认值,计算机的记忆

2、loc是修改过的下标,我们把他叫作标签,标签是由我们自主给的,计算机并不会自己产生

可以看到计算机的下标1的值是2

可以看到我们给的标签1的值是5

六、创建对象

1、这里的我们所理解的键其实就是数据的标签,大部分的人可能会理解为这里是一个字典或者一个数组,其实都不是,是一个一维数据

2、什么是键?如果不知道,就需要回头学习python基础了。

        键是字典的一个解释,前键后值,称为键值对,如下的:“键”:值

3、修改数据

使用loc,找标签“小张”让他的值等于95,可以看到被修改了

4、筛选数据

这里的&就是python,and的意思

七、两个数据相加、相减、相乘、相除

1、相加——add

可以看到需要链接s1,如果没有s1,那会导致数据相加错误,出现NaN;

这个时候,我们应该使用add:

        在s1的基础上add(s2,fill_value = “如果出现没有值的情况,以0代替”)

2、相减——sub

3、相乘——mul

4、相除——div

八、求最大值、最小值、求和值、平均值

九、describe() —— 数据分析方法

十、apply() —— 定义函数判断数据

apply()对数据批量处理

十一、DataFrame —— 创建二维数组

十二、修改标签

标签名要统一,否则会报错;但是可以缺少,但数据也要缺少,一一对应

特别:标签会自动排序好

十二、查看标签(行属性)

十三、查看列属性

十四、查看数据

十五、数据颠倒——行列调换

十六、提取数据(列)

1、查看班级数据

2、查看成绩数据

3、查看学号和成绩,这里我们需要再加一个【】,如果不加会报错

十七、提取数据(行)

注意:loc和iloc的区别

十八、切片操作

1、标签切片

2、下标切片

        注意:3是终止,并不会执行,如果想小红到小丽,需要 [1:4]

3、行列切片——标签

4、行列切片——下标

十九、筛选——判断、提取数据

1、单单判断数据,输出布尔值

2、判断完数据并提取数据,输出数据

二十、查看前几行数据——数据量庞大可使用

        注意:如果head()不输入任何的值,那他的默认值为5,输出前5行数据

二十一、drop搭配axis用法

我们先导入要使用的数据

        添加考试4的数据

drop:就是删除的意思

axis:用来指定是行还是列

可以看到删除了行的002和004

可以看到删除了列的考试2和考试4

二十二、两个数据相加

1、student的数据请看目录二十一

2、先定于一个数据bonus,让他们两个相加

3、注意:运行一次相加一次;标签要一一对应,否则会导致数据错误。

相加完之后不会改变原数据,如果需要改变原数据,全部都是要重新赋值

实现重新赋值,以考试4位例

二十三、案例实操——求出平均值

mean(axis=1):求平均值每一行。

这里可能会导致理解冲突,上面解释axis=0代表行,axis=1代表列,但是mean(axis=1)为什么代表的是行???请看下面的解释

可以理解为如果被包含,则方向相反。

        行对列操作

        列对行操作

二十四、案例实操——筛选出第二大的数据

1、loc[:,"考试1":"考试3"] 其实就是 loc["001":"006","考试1":"考试3"]

2、lambda x:定义匿名函数x

3、np.sort(x):使用numpy库的sort方法,进行升序

4、np.sort(x)[-2]:升序完后提取倒数第二个值,也就是第二大的值,然后返回匿名函数x

Read more

【Python】PyInstaller打包exe逆向实战:从pyinstxtractor到源码还原

1. PyInstaller打包exe逆向原理剖析 当你用PyInstaller把Python脚本打包成exe时,它实际上做了三件事:首先将Python代码编译成.pyc字节码,然后把这些字节码和Python解释器一起打包,最后加上一个自解压的启动器。这个过程中最关键的步骤是字节码生成和资源打包,而我们要逆向的就是这个过程。 PyInstaller生成的exe文件结构很有特点,它本质上是个自解压压缩包。用二进制编辑器打开这类exe,你会在文件末尾看到明显的"MEI"魔数标记,这就是PyInstaller的签名。解包时,pyinstxtractor工具正是通过定位这个标记来找到打包数据的起始位置。 逆向过程中最麻烦的是PyInstaller会对.pyc文件做手脚。正常的Python字节码文件包含16字节头部(4字节魔数+4字节时间戳+4字节文件大小+4字节校验和),但PyInstaller打包时会故意去掉前8个字节。这就是为什么直接反编译提取出的文件会报"Invalid pyc magic number"错误。 2. 工具准备与环境搭建 工欲善其事必先利其器,我们需要准备以下

By Ne0inhk
一文吃透 TF-IDF:从核心原理到 Python 实战,解锁 NLP 关键词提取核心技能

一文吃透 TF-IDF:从核心原理到 Python 实战,解锁 NLP 关键词提取核心技能

目录 一、先搞懂:关键词提取任务到底在做什么? 二、TF-IDF 核心原理:一文讲透 TF、IDF 与加权逻辑 2.1 TF:词频 2.2 IDF:逆文档频率 2.3 TF-IDF:最终加权计算 三、Python 实战:基于 sklearn 实现 TF-IDF 计算与关键词提取 3.1 语料数据准备 3.2 完整代码实现 3.3 运行结果与核心解读 3.4 中文文本的 TF-IDF 拓展 四、TF-IDF 的优缺点与核心应用场景 4.1

By Ne0inhk
Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用

Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用

Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用 Python操作国产金仓数据库(KingbaseES)全流程:从环境搭建到实战应用,大家好,我是 xcLeigh。现在国产化数据库越来越普及,金仓数据库(KingbaseES)作为一款超实用的企业级关系型数据库,在政府、金融、能源这些关键领域用得特别多。今天我就带大家从零开始,一步步学会用Python操作金仓数据库,从环境准备、连接数据库,到CRUD核心操作、事务处理,再到常见问题排查,内容全是干货,代码拿过去就能用,就算是新手也能很快上手! 前言     中电科金仓(北京)科技股份有限公司(以下简称“电科金仓”)成立于1999年,是成立最早的拥有自主知识产权的国产数据库企业,也是中国电子科技集团(CETC)成员企业。电科金仓以“提供卓越的数据库产品助力企业级应用高质量发展”为使命,致力于“成为世界卓越的数据库产品与服务提供商”。     电科金仓自成立起始终坚持自主创新,专注数据库领域二十余载,具备出色的数据库产品研发及服务能力,核心产品金仓数据库管理系统KingbaseES(简称“KES”

By Ne0inhk
ksycopg2实战:Python连接KingbaseES数据库的完整指南

ksycopg2实战:Python连接KingbaseES数据库的完整指南

摘要:本文详细介绍了KingbaseES数据库的Python专用驱动ksycopg2的使用方法。内容涵盖驱动安装、连接配置、CRUD操作等基础功能,以及事务管理、连接池等高级特性。ksycopg2作为遵循Python DBAPI 2.0规范的线程安全适配器,针对KingbaseES进行了深度优化,支持数据类型映射、批量操作等特性。文章提供了完整的业务表创建示例和员工管理系统实战案例,包含环境配置、性能优化建议和常见问题解决方案,帮助开发者快速掌握该驱动的使用技巧。通过详细的代码示例,展示了如何高效安全地操作KingbaseES数据库。 一、安装ksycopg2:KingbaseES的Python ksycopg2是 专为KingbaseES数据库设计的Python适配器 ,完全遵循Python DB API 2.0规范,具有线程安全的特性。它不仅提供了高效的数据操作能力,还支持KingbaseES特有的功能特性。 与通用的PostgreSQL驱动psycopg2相比,ksycopg2针对KingbaseES进行了深度优化,特别是在数据类型映射、事务处理和高级功能支持方面表现更加

By Ne0inhk