使用pandas模块实现数据的标准化
目录
1.3σ原则
2.离差标准化
3.标准差标准化
4.小数定标标准化
3σ 原则 | (u-3*σ ,u+3*σ ) |
离差标准化 | (x-min)/(max-min) |
标准差标准化 | (x-u)/σ |
小数定标标准化 |
x/10**k k=np.ceil(log10(max(|x|))) |
1.3σ原则
u 均值
σ 标准差
正太分布的数据基本都分布在(u-3σ,u+3σ)范围内
其他的数据
import pandas as pd
import numpy as np
def three_sigma(se):"""自实现3σ原则,进行数据过滤:param se:传进来的series结构数据:return:去除异常值之后的series数据"""bool_id=((se.mean()-3*se.std())<se) & (se<(se.mean()+3*se.std()))print(bool_id)return se[bool_id]#加载数据
detail=pd.read_excel('./meal_order_detail.xlsx')
#进行异常值处理
res=three_sigma(detail['amounts'])
print(detail.shape)
print(res.shape)
2.离差标准化
(x-min)/(max-min)
import pandas as pd
import numpy as npdef minmax_sca(data):"""离差标准化param data:传入的数据return:标准化之后的数据"""new_data=(data-data.min())/(data.max()-data.min())return new_data#加载数据
detail=pd.read_excel('./meal_order_detail.xlsx')
res=minmax_sca(detail[['amounts','counts']])
print(res)
data=res
bool_id=data.loc[:,'count']==1
print(data.loc[bool_id],'counts')
3.标准差标准化
(x-u)/σ
异常值对标准差标准化的影响不大
转化之后的数据--->均值0 标准差1
import pandas as pd
import numpy as np
def stand_sca(data):"""标准差标准化:param data:传入的数据:return:标准化之后的数据"""new_data=(data-data.mean())/data.std()return new_data#加载数据
detail=pd.read_excel('./meal_order_detail.xlsx')
res=stand_sca(detail[['amounts','counts']])
print(res)
print('res的均值:',res.mean())
print('res的标准差:',res.std())
4.小数定标标准化
x/(10^k)
k=math.ceil(log10(max(|x|)))
以10为底,x的绝对值的最大值的对数 最后进行向上取整
import pandas as pd
import numpy as np
def deci_sca(data):"""自实现小数定标标准化:param data: 传入的数据:return: 标准化之后的数据"""new_data=data/(10**(np.ceil(np.log10(data.abs().max()))))return new_data
#加载数据
detail = pd.read_excel('./meal_order_detail.xlsx')
res = deci_sca(detail[['amounts', 'counts']])
print(res)
使用pandas模块实现数据的标准化相关推荐
- pandas对Dataframe数据进行标准化
数据归一化可以提升模型收敛速度,加快梯度下降求解速度,提升模型精度,消除量纲得影响,简化计算 常用的归一化方式有min_max标准化和Z-Score标准化 #生成dataframe格式数据 impor ...
- Pandas 模块-操纵数据(8)-去除重复行 .drop_duplicates()
目录 8. 去除重复行 .drop_duplicates() 8.1 .drop_duplicates() 语法 8.1.1 .drop_duplicates() 语法结构 8.1.2 .drop_d ...
- Pandas 模块-操纵数据(7)-检测是否重复 .duplicated()
目录 7. 检测是否重复 .duplicated() 7.1 .duplicated() 语法 7.1.1 语法结构 7.1.2 参数说明 7.2 .duplicated() 范例 7.2.1 s ...
- python之日期与时间处理模块及利用pandas处理时间序列数据
文章目录 时间序列 一.日期和时间数据类型及工具 1.1字符串与datetime互相转换 二.时间序列基础 时间序列 时间序列(time series)数据是一种重要的结构化数据形式,应用于多个领域, ...
- Pandas模块中的DataFrame数据操作
Pandas模块对于二维数据表的操作非常方便,尤其是能够实现类似于数据库中的SQL语句的功能,方便了对数据的增删查改.下面举例说明DataFrame数据的基本操作. 为了便于理解,对于每种操作,均列出 ...
- PyTorch数据Pipeline标准化代码模板
前言 PyTorch作为一款流行深度学习框架其热度大有超越TensorFlow的感觉.根据此前的统计,目前TensorFlow虽然仍然占据着工业界,但PyTorch在视觉和NLP领域的顶级会议上已呈一 ...
- 20个案例详解 Pandas 当中的数据统计分析与排序
作者 | 俊欣 来源 | 关于数据分析与可视化 今天小编来给大家讲一下Pandas模块当中的数据统计与排序,说到具体的就是value_counts()方法以及sort_values()方法. valu ...
- 20个经典函数细说 Pandas 中的数据读取与存储,强烈建议收藏
作者 | 俊欣 来源 | 关于数据分析与可视化 大家好,今天小编来为大家介绍几个Pandas读取数据以及保存数据的方法,毕竟我们很多时候需要读取各种形式的数据,以及将我们需要将所做的统计分析保存成特定 ...
- 数据分析 从零开始到实战,Pandas读写CSV数据
知识点概要 1.创建一个虚拟python运行环境,专门用于本系列学习: 2.数据分析常用模块pandas安装 3.利用pandas模块读写CSV格式文件 开始动手动脑 1.创建虚拟环境 我平时比较喜欢 ...
最新文章
- 很简单却很实用的强拉脚本
- 【leetcode】581. Shortest Unsorted Continuous Subarray
- 成功解决ValueError: DataFrame.dtypes for data must be int, float or bool.Did not expect the data types
- Java System类
- android开发版本,Android开发之版本统一规范
- easyui dialog的一个小坑
- Jquery实现 TextArea 文本框根据输入内容自动适应高度
- 彭亚雄:7月24日阿里云上海峰会企业存储大神
- 解读《关于促进大数据发展的行动纲要》
- Java源文件编译出错:类文件包含错误的类 请删除该文件或确保文件位于正确的类路径子目录中
- 风云格式工厂隐私政策
- 2021.3.30-Robocup 2D学习日志
- 在微信小程序中实现文字呼吸效果
- 一些前端大牛都在学习的github库
- linux查看某个nas盘io,每天学习一个命令:pidstat 查看进程消耗资源
- 仿简书,知乎pc官网顶部导航栏上下滚动效果
- element中checkbox全选反选功能
- C++超轻量限流器实现
- vue3状态管理工具 pinia的使用
- 04---法拉第电磁感应定律
热门文章
- 【Python】采集3万张4K超清壁纸,实现定时自动更换桌面壁纸脚本(内含完整源码)
- [SEO工具]新站优化推广工具集
- java SpringBoot 集成 阿里云视频直播 完成直播功能
- w8dns服务器未响应,必应输入法在Win8.1下设置属性显示不正常的解决方法
- 送书|Python采集QQ音乐热歌榜首数据
- Linux服务器在线测速
- 盒子模型——margin
- Android~记录material.tabs.TabLayout一个bug
- pytorch将数据送到GPU进行训练
- 教你如何找回被盗的QQ密码(转贴)