按总和归一化 pandas DataFrame行
问题描述
将 pandas DataFrame的每一行标准化的最常用的方法是什么?将列正常化很容易,所以一个(非常难看!)选项为:
(df.T / df.T.sum()).T
pandas 广播规则禁止df / df.sum(axis=1)
这样做
解决方案
要解决直播问题,可以使用div
方法:
df.div(df.sum(axis=1), axis=0)
参见pandas User Guide: Matching / broadcasting behavior
相关文章