Dataframe Pandas 的加法平滑
Posted
技术标签:
【中文标题】Dataframe Pandas 的加法平滑【英文标题】:Additive Smoothing for Dataframe Pandas 【发布时间】:2016-09-02 15:51:42 【问题描述】:我在 Pandas 中有一个包含很多零的大型数据框。 我想应用附加平滑,但不是从头开始编写,而是想知道是否有更好的方法在 Pandas 中生成“平滑”数据帧。谢谢!
【问题讨论】:
【参考方案1】:加法平滑只是一个基本的数学运算,只需要很少的加法和除法 - 没有“特殊”功能,您只需编写一个单线操作数据帧的特定列。
【讨论】:
DataFrame.add,例如。 g.,也只是加法。但是,它们确实具有这样的功能,因为它派上用场。而且您不一定需要对我的问题投反对票。 我没有否决这个问题,也不认为它应该被否决(这就是我发布答案的原因)。之所以提供 add 是因为它具有多个附加功能(参数化广播、处理 na 值),同时对数据的操作非常通用。另一方面,加法平滑与概率的经验估计密切相关,因此使用非常具体(与数据帧的一般性相比)。 我偶然发现了这个 Q,因为我想要一个快速的方程式,但后来我意识到它完全有道理,没有一个预制的。是的,它只是df['smooth_count'] = df['count'].apply(lambda v: (v+alpha)/(N+alpha*d)*N)
,其中d = len(df['count'])
,但N,试验次数,可能不是df['count'].sum()
,并且alpha,平滑参数,由用户决定(默认值:1)。考虑为这两个使用什么需要更多的努力,而不是编写方程式......以上是关于Dataframe Pandas 的加法平滑的主要内容,如果未能解决你的问题,请参考以下文章
当行尾有多余空格时,将 .dat 文件转换为 DataFrame
python中,dataframe或series对象可以对列进行运算么(加减乘除)?