Python 如何有效地标准化数据帧中的数字列
在panda数据框架中,我任意混合了标称列和实值列,我只想标准化数字列。我有这段代码,它可以完成任务。。但它使用了两个.tolist()函数调用使其工作。我很难理解索引,我觉得可能有一种更快的方法Python 如何有效地标准化数据帧中的数字列,python,numpy,pandas,Python,Numpy,Pandas,在panda数据框架中,我任意混合了标称列和实值列,我只想标准化数字列。我有这段代码,它可以完成任务。。但它使用了两个.tolist()函数调用使其工作。我很难理解索引,我觉得可能有一种更快的方法 class Standardizer(): def __init__(self, matrix): self.means_ = matrix.mean() self.stds_ = matrix.std() def transform(self, matrix): m
class Standardizer():
def __init__(self, matrix):
self.means_ = matrix.mean()
self.stds_ = matrix.std()
def transform(self, matrix):
matrix = matrix.fillna(self.means_)
matrix[self.means_.index] = (matrix[self.means_.index] - self.means_.tolist()) / self.stds_.tolist()
return matrix