利用pandas进行归一化 时,出现这个:
D:\AN\lib\site-packages\pandas\indexes\base.py:2482: RuntimeWarning: unorderable types: int() < str(), sort order is undefined for incomparable objects
return this.join(other, how=how, return_indexers=return_indexers)
D:\AN\lib\site-packages\pandas\core\ops.py:633: RuntimeWarning: unorderable types: str() < int(), sort order is undefined for incomparable objects
return_indexers=True)
而且归一化 后 结果全为nan
是这么进行 归一化的:
val_min, val_max = df2[attr].min(), df2[attr].max()
val_scal = val_max - val_min
df2[attr] = df2[attr].apply(lambda x: (x - val_min) / val_scal)
实际上,这个 是 自己太蠢,应该 写 for循环的,毕竟要使用apply
for attr in enumerate(l_attrs):
val_min, val_max = df2[attr].min(), df2[attr].max()
val_scal = val_max - val_min
df2[attr] = df2[attr].apply(lambda x: (x - val_min) / val_scal)