【发布时间】:2021-11-07 03:41:13
【问题描述】:
我对 Python 还很陌生,所以可能有很多需要改进的地方,但是在下面的代码中,我试图编写一个函数来获取数据文件的位置、必须规范化的属性和要执行的归一化类型('min_max' 或 'z_score')
在此之后,根据提到的规范化类型,我希望它应用适当的公式并返回一个字典,其中键 = 数据集中的原始值,值 = 规范化值。
def normalization (fname, attr, normType):
result = {
}
df = pd.read_csv(fname)
targ = list(df[df.columns[attr]])
scaler = MinMaxScaler()
df["minmax"] = scaler.fit.transform(df[[df.columns[attr]]])
df["zscore”] = ((df[[df.columns[attr]]]) - (df[[df.columns[attr.mean()]]]))/ (df[[df.columns[attr.std(ddof=1)]]])
if normType == "min_max":
result = dict(zip(targ, df.minmax.values.tolist())
else:
result = dict(zip(targ, df.zscore.values.tolist())
return result
我不断收到与 zscore 计算有关的错误,并且一直在努力解决它。我将不胜感激任何可以为我指明正确方向的帮助。 谢谢
编辑:显示的错误消息是 "SyntaxError: EOL 扫描字符串文字时"
【问题讨论】:
-
您能否编辑您的帖子以包含完整的错误消息,以便我可以更好地帮助您?
标签: python dataframe normalization