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

如何迭代pandas dataframe的行

python中,dataframe或series对象可以对列进行运算么(加减乘除)?

9.Pandas怎样实现DataFrame的Merge

如何使用 python 或 pandas 根据包含字典列表的列过滤 DataFrame?

pandas创建内容全是缺失值NaN的dataframepandas创建dataframe指定每个数据列的数据类型