Pandas DataFrame,pandas dataframe columns
本文主要介绍Pandas如何处理DataFrame中的inf值,有很好的参考价值。希望对你有帮助。如有错误或不足之处,请不吝赐教。
00-1010如何处理DataFrame的inf值?inf是什么?为什么会这样?生成inf有什么好处?生产inf有什么危害?怎么处理?如何获取inf的位置并填充?
目录
用DataFrame计算变化率时,比如当(今天-昨天)/昨天正好是(2-0)/0时,这些结果数据就会变成inf。
为了方便后续处理,这些inf值可以用numpy代替。
1.用数值替换第1列(系列格式)中的inf。
将numpy作为np导入
df[ Col ][NP . isinf(df[ Col ])]=-1
2.用NA值替换一列(系列格式)中的inf。
将numpy作为np导入
df[ Col ][NP . isinf(df[ Col ])]=NP . nan
3.用数值替换整个数据帧中的inf(空值也是如此)。#感谢评论区的补充
将numpy作为np导入
Df.replace(np.inf,-1) #用-1替换正inf
#用NA替换正负inf,并添加inplace参数。
df.replace([np.inf,-np.inf],np.nan,inplace=True)
如何处理DataFrame的inf值
numpy中的inf相关文档
DataFrame有关inf的处理技巧
IEEE 754浮点意味着(正)无穷大。
什么是inf?
np。地狱火
-inf
np.inf
中程核力量
np.log(0)
-inf
Np.array([1,2])/0 #符合大多数情况
数组([ inf,inf])
为什么会产生?
目前,我看不到任何好处。我只是简单的用inf来表示无穷大,方便理解和表达。
产生inf有什么好处?
对于用户来说,inf需要特殊处理,增加了工作量。
为什么需要特殊对待?因为很多机器学习算法库不支持inf的处理。
产生inf有什么坏处?
常见的处理方法:
不要进行更换。
怎么处理?
Isinf:显示哪些元素是正的或负的无穷大isposinf:显示哪些元素是正的无穷大isneginf:显示哪些元素是负的无穷大isnan:显示哪些元素不是数字isfinite:显示哪些元素是有限的(不是非数字、正无穷大和负无穷大中的一个)“”
Np.isinf(np.inf) #其他函数使用方法相同,使用最多的是isinf。
真实的
np.isinf(np.array([1,np.inf])
数组([False,True],dtype=bool)
np.isinf(pd。DataFrame(np.array([1,np.inf]))
0
0错误
1正确
s1=pd。系列([1,2,3,np.inf])
s1
0 1.0
1 2.0
2 3.0
3南
dtype:浮点64
#为inf填写999
s1[np.isinf(s1)]=999
s1
0 1.0
1 2.0
2 3.0
3 999.0
dtype:浮点64
inf填np.nan(比较常用)
s1[np.isinf(s1)]=np.nan
s1
0 1.0
1 2.0
2 3.0
3南
dtype:浮点64
以上个人经验,希望给你一个参考,也希望你能支持盛行的IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。