np.max函数,
本文主要介绍了numpy中np.nanmax和np.max的区别和坑点,有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。
目录
np.nanmax和np.array([1,2,3,np.nan])。max()通过速度来区分nan和numpy中常见方法
np.nanmax和np.array([1,2,3,np.nan]).max()的区别
numpy.nanmax在numpy的官方文档
原理
计算最大dataframe时,必须先使用Series对象的max()方法(),最终结果为4。
s1=pd。系列([1,2,3,4,名词性名词])
s1_max=s1.max()
但由于数据量巨大,列数较多,作者为了加快计算速度,使用numpy计算最大值,但就像下面的代码一样,最终结果是nan,而不是4。发现如果这样计算最大值,也会包含nan,最后结果是nan。
s1=pd。系列([1,2,3,4,名词性名词])
s1_max=s1.values.max()
圆盘烤饼
通过阅读numpy的文档,发现有一个np.nanmax的函数,可以将np.nan排除在最大值计算之外,得到想要的正确结果。
当然,不仅是max,还有min,std,mean,s1.values.min /std/mean()在列中包含np.nan时会返回nan。
速度区别
速度从快到慢是:
s1=pd。系列([1,2,3,4,5,名词性名词])
#速度从快到慢
NP . nanmax(S1 . values)NP . nanmax(S1)S1 . max()
numpy中nan和常用方法
#!/usr/bin/env python
# -*-编码:utf-8 -*-
# Author:贾士林
将numpy作为np导入
a=np.arange(9,dtype=float)。重塑(3,3)
a[[[1],[2]]=NP . nan
打印(一份)
# isnan函数
print(np.isnan(a))
A[np.isnan(a)]=0 #用中间值或平均值替换nan。
打印(一份)
print(NP . count _非零(a))
统计总和
b=np.arange(12,dtype=int)。整形(2,6)
打印(b)
Print(np.sum(b,axis=0)) #结果与行的形状相同。
print(np.sum(b,axis=1))
# .平均值()
打印(b.mean())
打印(b.mean(轴=0))
打印(平均值(轴=1))
# np.median()中值
print(np.median(b,axis=0))
# .最小()。最大()
# .ptp()机器值
打印(np.ptp(b))
# .标准()标记差异
print(np.std(b,轴=0))
以上个人经验,希望给你一个参考,也希望你能支持盛行的IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。