【发布时间】:2019-06-28 04:25:36
【问题描述】:
如何与 pandas 数据框中每列的中值进行比较,如果值大于中值,则结果为 true,如果值小于中值,则结果为 false?
现在我正在标准化,所以基本上与每列的 0(平均值)进行比较。想要一种方法对中位数做同样的事情。
【问题讨论】:
-
添加你尝试过的代码
标签: pandas multiple-columns median operation
如何与 pandas 数据框中每列的中值进行比较,如果值大于中值,则结果为 true,如果值小于中值,则结果为 false?
现在我正在标准化,所以基本上与每列的 0(平均值)进行比较。想要一种方法对中位数做同样的事情。
【问题讨论】:
标签: pandas multiple-columns median operation
我从您的问题中了解到,您想比较每列值与其列中位数
df = pd.DataFrame(data={'a':[1,2,3,4,4,5],
'b':[1,2,3,3,3,3]})
# median of col a and col b is calculated and save in another column
df['median_a'] = df['a'].median()
df['median_b'] = df['b'].median()
# if col a value is greater than median_a then a_bool contains True else False
df['a_bool'] = df.apply(lambda x: True if x['a']>x['median_a'] else False ,axis=1)
df['b_bool'] = df.apply(lambda x: True if x['b']>x['median_b'] else False,axis=1)
希望能解决你的问题
【讨论】: