Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用Dataframe应用函数来规范化数据_Python_Pandas - Fatal编程技术网

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

Python 如何使用Dataframe应用函数来规范化数据,python,pandas,Python,Pandas,我试图用我已经得到的平均值和标准值来规范化新数据 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 standardi

我试图用我已经得到的平均值和标准值来规范化新数据

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']

我想得到标准化的数据帧,每个值都是通过“b”数据帧的平均值和每个列上的std以及apply函数来计算的

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

任何更好的方法都可以。谢谢

(a-b.loc['mean'])/b.loc['std']
如果将
b
定义为
b=b.T
,则

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

你已经有了。用标准化(a,b)代替标准化(a,b)

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