我正在使用StandardScaler来扩展我的数据,如教程所示。但它不起作用。
我尝试复制与教程中使用的相同代码,但仍然显示错误。
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaler.fit(df.drop('TARGET CLASS',axis=1))
scaled_features = scaler.transform(df.drop('TARGET CLASS',axis=1))
错误如下:
TypeError: fit() missing 1 required positional argument: 'X'
通过尝试重现您的问题,似乎代码中的所有内容都是正确的并且正在完美执行。下面是我为测试代码而创建的独立示例:
import pandas as pd
from sklearn.datasets import load_iris
from sklearn.preprocessing import StandardScaler
data = load_iris()
df = pd.DataFrame(data.data, columns=['TARGET CLASS', 'a', 'b', 'c'])
scaler = StandardScaler()
scaler.fit(df.drop('TARGET CLASS', axis=1))
scaled_features = scaler.transform(df.drop('TARGET CLASS',axis=1))
我建议您通过打印来检查变量df
。例如,您可以尝试在传递它并打印其内容之前将其转换为 NumPy 数组:
import numpy as np
X = df.drop('TARGET CLASS',axis=1).values
print(X)