繁体   English   中英

如何使用 Dataframe 应用函数来规范化数据

[英]How do I use Dataframe apply function to normalize Data

我正在尝试使用我已经获得的均值和标准值来规范化新数据。

t = np.array([[1,2,3],
     [4,5,6],
     [7,8,9]])

tt = np.array([[1,1,1],
     [100,100,100]])

a = pd.DataFrame(t, columns=['a','b','c'])
b = pd.DataFrame(tt, columns=['a', 'b', 'c'], index=['mean', 'std'])

def standardize(x, y):
    return (x - y.loc['mean']) / y.loc['std']

'a, b 数据框 '

a.apply(standardize(a,b))

我想得到标准化的数据帧,每个值都是由'b' 数据帧的平均值和标准在每列上使用应用函数计算的

例如) a[0]['a'] = (a[0]['a'] - b['mean']['a']) / b['std'][a]

任何更好的方法也可以。 谢谢..

(a-b.loc['mean'])/b.loc['std']

如果您将b定义为b=bT ,则

(a-b['mean'])/b['std']

你已经拥有了。 使用standardize(a,b)而不是a.apply(standardize(a,b))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM