【发布时间】:2019-07-01 03:17:54
【问题描述】:
我正在使用House Prices Kaggle dataset。我正在尝试仅在数据集中的 numerical features(LotFrontage、LotArea 等)上使用来自 sklearn 的 RobustScaler。首先,我通过调用select_dtypes(exclude=['object'] 将数据拟合到我的数据框的数值。一旦转换器适合这些值,我就会调用transform 函数,尝试通过将转换器设置为对象排除属性来转换那些我刚刚适合数据的相同值。一旦我尝试这样做,我会收到以下错误消息:
语法错误:无法分配给函数调用
数据已经去掉了null 值。有效的是,当我将转换结果设置为某个变量时,我将结果返回为numpy.ndarray
from sklearn.preprocessing import RobustScaler
transformer = RobustScaler().fit(df_train.select_dtypes(exclude=['object']))
df_train.select_dtypes(exclude=['object']) = transformer.transform(df_train.select_dtypes(exclude=['object'])) # This doesn't work
test = transformer.transform(df_train.select_dtypes(exclude=['object'])) # This DOES work, but not in the format I need
我想要的只是转换后的属性在其相应位置返回到原始pandas data frame。如果我不能直接转换原始数据框结果,是否可以实施一些解决方法?
【问题讨论】:
标签: python python-3.x regression scaling kaggle