python实现非正态分布转正态分布(BoxCox转换)

liftword2个月前 (03-09)技术文章12

功能:将一维非正态分布数据转化为正态分布

输入:xlsx文件含有"患者密度(人/10万人)"一列

输出:将"患者密度(人/10万人)"一列转换为正态分布,并输出


实现代码:

1

import pandas as pd

2

import matplotlib.pyplot as plt

3

import seaborn as sns

4

import matplotlib

5

from scipy import stats

6

import warnings

7

warnings.filterwarnings("ignore")

8


9

def Box_Cox(file,sheet_name):

10

df1 = pd.read_excel(file,sheet_name)

11

print(df1["患者密度(人/10万人)"])

12

sns.distplot(df1["患者密度(人/10万人)"],color = "#D86457")

13

matplotlib.rcParams['font.sans-serif'] = ['SimHei']

14

matplotlib.rcParams['axes.unicode_minus'] = False

15

plt.show()

16


17

fig = plt.figure()

18

ax = fig.add_subplot(111)

19

stats.boxcox_normplot(df1["患者密度(人/10万人)"], -20, 20,plot = ax)

20

plt.axvline(x = stats.boxcox_normmax(df1["患者密度(人/10万人)"]),color = "#D86457")

21

plt.show()

22


23

print(stats.boxcox_normmax(df1["患者密度(人/10万人)"]))

24

x = stats.boxcox(df1["患者密度(人/10万人)"],stats.boxcox_normmax(df1["患者密度(人/10万人)"]))

25

sns.distplot(x,color = "#D86457")

26

plt.show()

27


28

df=pd.DataFrame(x,columns=['转换'])

29

print(df)

30


31

if __name__=='__main__':

32

Box_Cox("F:\医学大数据课题\论文终稿修改\实验\差异性分析.xlsx",sheet_name='人口密度分组')

实现效果:

喜欢记得点赞,在看,加关注(数据杂坛),将持续更新!

相关文章

Python中的十六进制与十进制的相互转换

十进制主要运用于日常生活当中,而八进制主要运用于电子技术行业,是为了配合二进制而使用的,二进制是机器能够识别的最直接语言,但是二进制位数太多,不方便记录,所以一般把二进制转化为八进制或十六进制。在这篇...

「调试」使用python与单片机进行通信

调试说明:环境:usb转ttl线一根,通信协议一份,STC系列单片机一个,电脑一台。功能:使用python发送16进制数据转换成字节流数据发给单片机,单片机返回16进制数据后转10进制(本次测试是获取...

python散装笔记——149: 从Python 2迁移到Python 3的不兼容性(六)

26: 编码/解码为十六进制不再可用Python 2.x Version ≤ 2.7"1deadbeef3".decode('hex') # Out: '\x1d\xea\xdb\xee\xf3' '...

Python 趣味编程:我的压岁钱

题目压岁钱又名压祟钱。是除夕吃完年夜饭,由长辈将事前准备好的钱分给晚辈,是过年习俗之一。今年除夕页面,小明收到了妈妈的 600 元,爸爸的 800 元,奶奶的 800 元,爷爷的 1000 元,姥姥的...

Python二进制、八进制、十进制、十六进制互转

Python二进制、八进制、十进制、十六进制互转在Python中各种进制的转换还是比较方便的,都有内置的方法二进制 bin()八进制 oct()十六进制 hex()十进制 int()通过以上4个方法就...

20.8k Star本科生为你开发的十六进制编辑器

ImHex 是一个十六进制编辑器,用于逆向工程师解码、显示和分析二进制数据格式、提取信息或写入字节补丁的工具。ImHex 的开发者是 WerWolv,他是一名来自瑞士的 23 岁嵌入式系统电子工程师。...