pandas---数学函数、离散化处理、分组聚合

news2024/12/28 20:12:56

1. 数学函数

方差:当数据分布比较分散(即数据在平均数附近波动较大)时,各个数据与平均数的差的平方和

较大,方差就较大;当数据分布比较集中时,各个数据与平均数的差的平方和较小。因此方差越

大,数据的波动越大;方差越小数据的波动就越小

标准差:标准差 = 方差的算术平方根

df.var()  # 方差
df.std()  # 标准差

其他的数学函数:

df.count()  # 非空的数量
df.count(axis=1)  
df.max()  # 默认求在每一列中不同行之间的最大值
df.max(axis=1) 
df.min()  # 最小值
df.min(axis=1)
df.median()  # 中位数
df.sum()  # 求和
# df.values.sum()  # 求所有元素的和
df.sum(axis=1)
df.mean() # 平均值
df.mean(axis=1)
df[1].value_counts()  # 统计元素出现次数
df.cumsum()  # 累加
df.cumprod()  # 累乘

协方差:两组数值中每对变量的偏差乘积的平均值。

协方差>0 : 表式两组变量正相关。

如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值时另外一个也大于自身的

期望值,那么两个变量之间的协方差就是正值;     

协方差<0 : 表式两组变量负相关。

如果两个变量的变化趋势相反,即其中一个变量大于自身的期望值时另外一个却小于自身的期望

值,那么两个变量之间的协方差就是负值。

协方差=0 : 表式两组变量不相关。

df.cov()  # 协方差
df[0].cov(df[1])   # 第0列和第1列的协方差

相关系数r:相关系数 = X与Y的协方差 / (X的标准差 * Y的标准差);

相关系数值的范围在-1和+1之间;

r>0为正相关,r<0为负相关。r=0表示不相关;

r 的绝对值越大,相关程度越高。

df.corr()  # 所有特征相关系数
df.corrwith(df[2])  # 单一特征相关系数

2. 数据离散化

连续属性离散化的目的是为了简化数据结构,数据离散化技术可以用来减少给定连续属性值的个

数。离散化方法经常作为数据挖掘的工具。

股票的涨跌幅离散化:

①先读取股票的数据,筛选出p_change数据

data = pd.read_csv("./data/stock_day.csv")
p_change= data['p_change']

②将股票涨跌幅数据进行分组

使用的工具: pd.qcut(data, q):

对数据进行分组,一般会与value_counts搭配使用

series.value_counts():统计分组次数

# 自行分组
qcut = pd.qcut(p_change, 10)
# 计算分到每个组数据个数
qcut.value_counts()

自定义区间分组: pd.cut(data, bins)

# 自己指定分组区间
bins = [-100, -7, -5, -3, 0, 3, 5, 7, 100]
p_counts = pd.cut(p_change, bins)

③股票涨跌幅分组数据变成one-hot编码

把每个类别生成一个布尔列,这些列中只有一列可以为这个样本取值为1.其又被称为独热编码。

pandas.get_dummies(data, prefix=None)

data:array-like, Series, or DataFrame            prefix:分组名字

# 得出one-hot编码矩阵
dummies = pd.get_dummies(p_counts, prefix="rise")

3. 分组聚合

 数据聚合通常是要使每一个数组生成一个单一的数值。

数据分类处理:

分组:先把数据分为几组

用函数处理:为不同组的数据应用不同的函数以转换数据

合并:把不同组得到的结果合并起来

数据分类处理的核心: groupby()函数

# 创建DataFrame
df = pd.DataFrame(
    {
        'color': ['green', 'green', 'yellow', 'blue', 'blue', 'yellow', 'yellow'],
        'price': [4, 5, 3, 2, 1, 7, 6]
    }
)
# 按 color 来进行分组
df.groupby(by='color')
# 结果是
<pandas.core.groupby.generic.DataFrameGroupBy object at 0x000002A252DC04F0>

使用.groups属性查看各行的分组情况:

df.groupby(by='color').groups
# 结果是
{'blue': [3, 4], 'green': [0, 1], 'yellow': [2, 5, 6]}
# 分组 + 聚合
df.groupby('color').sum()

分组+聚合例子: 

ddd = pd.DataFrame(
    data={
        "item": ["萝卜","白菜","辣椒","冬瓜","萝卜","白菜","辣椒","冬瓜"],
        'color':["白","青","红","白","青","红","白","青"],
        'weight': [10,20,10,10,30,40,50,60],
        'price': [0.99, 1.99, 2.99, 3.99, 4, 5, 6,7]
    }
)
# 对ddd进行聚合操作,求出颜色为白色的价格总和
ddd.groupby('color')['price'].sum()  # Series
ddd.groupby('color')[['price']].sum()  # DataFrame
ddd.groupby('color')[['price']].sum().loc[['白']]
# 对ddd进行聚合操作,分别求出萝卜的所有重量以及平均价格
df1 = ddd.groupby('item')[['weight']].sum()
df2 = ddd.groupby('item')[['price']].mean()
# 使用merge合并总重量及平均价格
display(df1, df2)
df1.merge(df2, left_index=True, right_index=True)

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

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

相关文章

【计算机网络】如何学好计网-第一章概论

相关术语 URI&#xff1a;Uniform Resource Identifier 统一资源标识符&#xff0c;指的是一个资源 URL&#xff1a;Uniform Resource Location 统一资源定位符&#xff0c;URI的子集&#xff0c;用地址定为的方式指定一个资源 URN&#xff1a;Uniform Resource Name 统一资…

北京论道|光环云李卓然:以“云”为帆 赋能文化出海行业创新增长

2023年6月15~16日&#xff0c;由流媒体网主办&#xff0c;北京新媒体&#xff08;集团&#xff09;有限公司、北京联通、北京电信、北京移动共同协办的「北京论道暨第25届中国智能视听与科技创新高峰论坛」在北京隆重举行。 本届论道以“电视的未来与未来的电视”为主题&#…

java语言中方法的重载

文章目录 前言一、重载是什么&#xff1f;二、使用步骤 1.实操展示2.注意事项总结 前言 小时候&#xff0c;我们学会了十以内的加法&#xff0c;却对十以外的加法感到害怕&#xff0c;但从现在来看&#xff0c;它们都属于加法&#xff0c;只是计算方法略有不同。方法的重载也一…

【备战秋招】每日一题:2023.05-B卷-华为OD机试 - 阿里巴巴找黄金宝箱(IV)

2023大厂笔试模拟练习网站&#xff08;含题解&#xff09; www.codefun2000.com 最近我们一直在将收集到的各种大厂笔试的解题思路还原成题目并制作数据&#xff0c;挂载到我们的OJ上&#xff0c;供大家学习交流&#xff0c;体会笔试难度。现已录入200道互联网大厂模拟练习题&a…

Computer Graphics From Scratch - Chapter 9

系列文章目录 简介&#xff1a;Computer Graphics From Scratch-《从零开始的计算机图形学》简介 第一章: Computer Graphics From Scratch - Chapter 1 介绍性概念 第二章&#xff1a;Computer Graphics From Scratch - Chapter 2 基本光线追踪 第三章&#xff1a;Computer Gr…

IEEE 最佳论文提名 | TraND:用步态算法优化身份识别

来源&#xff1a;投稿 作者&#xff1a;小灰灰 编辑&#xff1a;学姐 论文标题&#xff1a;TraND: Transferable Neighborhood Discovery for Unsupervised Cross-domain Gait Recognition 论文链接: https://arxiv.org/pdf/2102.04621v1.pdf 步态识别开始应用在公共场域身份…

centos mysql安装配置远程访问

包含以下三个部分&#xff1a;mysql安装&#xff0c;mysql密码重置、mysql配置远程访问。 一 centos安装mysql 1、wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 2、yum -y install mysql57-community-release-el7-10.noarch.rpm 3、yum…

to be delete

一、grafana版本升级 1.1 还是先跟着官网简单走一波 建议经常升级Grafana&#xff0c;以获取最新的修补程序和增强功能。 为了实现这一点&#xff0c;Grafana升级向后兼容&#xff0c;并且升级过程简单快捷。升级通常是安全的&#xff08;在许多次要版本和一个主要版本之间&a…

Python习题进阶

1.十六进制数字的大小 描述 计算的世界&#xff0c;除了二进制与十进制&#xff0c;使用最多的就是十六进制了&#xff0c;现在使用input读入一个十六进制的数字&#xff0c;输出它的十进制数字是多少&#xff1f; 输入描述&#xff1a; input读入一个十六进制数字&#xf…

微信支付服务商接入指引(企业)

目录 一、官方指引二、申请流程1.进入服务商平台2.填写资料3.账户验证&资料审核 三、登录 一、官方指引 https://kf.qq.com/faq/161220iqeAfA1612202yeURB.html 二、申请流程 1.进入服务商平台 https://pay.weixin.qq.com/static/partner_guide/service_provider.shtml…

【JVM快速入门篇】

本笔记内容为狂神说JVM快速入门篇部分 目录 一、JVM的位置 二、JVM体系结构 三、类加载器&#xff08;ClassLoader&#xff09; 四、双亲委派机制 双亲委派机制的作用 五、沙箱安全机制 六、Native ​编辑Native Method Stack 本机方法栈 Native Ilnterface本地接口…

低代码靠谱吗?实操一遍就知道了

一、前言 最近一段时间&#xff0c;“低代码”概念特别流行&#xff0c;有些人特别推崇它&#xff0c;也有些人对此不屑一顾。 推崇它的人认为&#xff0c;它有很多优点&#xff0c;比如说能够降低开发周期&#xff0c;提高系统开发效率&#xff0c;降低开发成本&#xff0c;学…

使用HBuilder将h5网站打包成app 自行打包

1、点击manifest.json&#xff0c;基础配置&#xff0c;APP名字&#xff0c;是否全面屏 2、然后点击图标配置&#xff0c;选好后点自动生成所有图标并替换 点击模块配置&#xff0c;选VideoPlayer和X5内核 然后顶部菜单选发行&#xff0c;选择原生App-云打包 选公测证书然后…

WPF教程-XAML介绍

XAML介绍 1.定义 为构建应用程序用户界面而创建的一种新的“可扩展应用程序标记语言”&#xff0c;提供一种便于扩展和定位的语法来定义和程序业务逻辑分离的用户界面。 XAML 是一种 XML&#xff08;Extensible Markup Language&#xff09;的扩展&#xff0c;XAML 是 WPF 中…

云计算——云计算与虚拟化的关系

作者简介&#xff1a;一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;网络豆的主页​​​​​ 目录 前言 一.虚拟化 1.什么是虚拟化 2.虚拟化技术作用 二.云计算与虚拟化的关系 三.虚…

一文让非技术宅读懂为什么AI更“喜欢”GPU而不是CPU?

一、引言 随着人工智能&#xff08;AI&#xff09;技术的快速发展&#xff0c;深度学习等算法在图像识别、自然语言处理、数据挖掘等方面表现出了强大的能力。而这些算法的底层计算&#xff0c;往往对硬件有着极高的要求。为了满足这些需求&#xff0c;越来越多的研究和工程实…

关于不同型号电脑谷歌浏览器下载指定版本的方法(超详细教程)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言1、根据链接打开地址2、页面说明3、下载过程&#xff08;1&#xff09;选中指定版本点击它&#xff08;这里以52.0.27.37.1为例&#xff09;&#xff08;2&…

美国访学博后答疑|尚未出国DS-2019表格过期了怎么办?

美国执J1签证者尚未出国&#xff0c;但DS-2019表格过期了怎么办&#xff1f;本篇知识人网老师就以下三种情况&#xff0c;统一做答疑建议。 美国访问学者和博士后的签证类型多是J1签证&#xff0c;需要由美国接收方将签字后的DS2019表邮寄给国内&#xff0c;申请者本人在表格正…

多项安全新功能为云上安全保驾护航,就在亚马逊云科技re:Inforce全球大会

亚马逊云科技re:Inforce 2023全球大会于当地时间2023年6月13日在美国加州安纳海姆拉开帷幕。在大会上&#xff0c;亚马逊云科技宣布推出十多项安全新服务及功能&#xff0c;下面就来一览本次大会的风采。 “Security is our top priority.” “安全是我们的首要优先级”&#…

Socket 传情:使用 Python 发送 GET 请求

文章目录 参考描述HTTPHTTP 报文HTTP 请求报文请求行请求头空行请求体 HTTP 响应报文状态行响应头空行响应体 HTTP 请求方法HTTP 与 TCP 协议HTTP 协议TCP 协议 httpbin.org socket 模块socket.socket()Socket().connect()Socket().send() 与 Socket().sendall()Socket().recv(…