我有一个包含许多列的大数据框。我想规范化几个列,它们都是数字,然后使用回归绘制两个。我以为下面的代码可以帮我
from sklearn import preprocessing
# Create x, where x the 'scores' column's values as floats
modDF = df[['WeightedAvg','Score','Co','Score', 'PeerGroup', 'TimeT', 'Ter', 'Spread']].values.astype(float)
# Create a minimum and maximum processor object
min_max_scaler = preprocessing.MinMaxScaler()
# Create an object to transform the data to fit minmax processor
x_scaled = min_max_scaler.fit_transform(modDF)
# Run the normalizer on the dataframe
df_normalized = pd.DataFrame(x_scaled)
import seaborn as sns
import matplotlib.pyplot as plt
sns.regplot(x="WeightedAvg", y="Spread", data=modDF)
但是,我得到以下错误:IndexError: only integers, slices (
:), ellipsis (
…), numpy.newaxis (
无) and integer or boolean arrays are valid indices
我使用sns.regplot
进行了一次没有规范化的回归,结果成功了,但它看起来很奇怪,所以我想看看是否应用了规范化。我知道回归是如何运作的。我只是不知道回归是如何运作的
不需要使用命令:
df_normalized = pd.DataFrame(x_scaled)
如果要运行linear regression。这应该起作用:
如果使用“训练/测试分割”,则必须仅在训练数据上使用缩放器拟合,测试数据在该时间点是未知的!对于测试部件,您只能将其用于转换
相关问题 更多 >
编程相关推荐