同楼上lifanqie1所说,确实是有些值设定为None后会将其与NA都设定为缺失值,但是不是MasVnrType(没有这个特征),解决方法是加一行all_features.replace('None', 'None_fea', inplace=True)
就可以了
你可以打印一下all_features的dtype,可以看到大概率是前一步转独热编码的时候它给的是Boolean型而不是int形式的0和1,在转tensor之前自行转化一下就可以:all_features = all_features.astype({col: ‘int’ for col in all_features.select_dtypes(include=[‘bool’]).columns})
为什么我下载数据集报错
AccessDenied
Access Denied
07JRYK4SMH161F5T
wmG3gxeJIKt5qA/g8Vrtz2P030+6AIK8cNAhvDwlJ/bJYq1ukvfE9Sp/ApnCJyL+wIwfd/PFWAI=
print(train_data.shape)
print(test_data.shape)
(1, 1)
(1, 1)
非常感谢,我是新手,使用的pycharm,遇到这个问题,使用你的方法已经解决
为什么原本的bool不能用呢,支持的类型不是有bool吗
同意lifanqie1所说,但Naom1的解决方案似乎不太行。确实是MasVnr中有None,pandas在读取csv之后就会把None视作NA,因此用inplace替换无法找到’None’字符串;我的解决方案是:需要在csv源文件中替换None为None_fea,再用panda读取时候改为修改后的文件,就可以了
均值填充在apply之后,是等效的。你可以理解为,本来是均值填充,但是先归一化处理后均值为0,因此后边进行0填充即可。
是不是这个课程有专用的微信讨论群呢?记得之前看到,好像是在v1版本的评论区,现在却关闭了。看到的麻烦发一下
我觉得你说得很有道理,我用log_rmse调出来的参数上传到kaggle实际损失比测试的大,换成mse作损失函数就跟kaggle结果差不多了
0.12328分的参数
num_folds = 5
num_epochs = 300
lr = 0.5
num_hiddens = 512
ReLU
batch_size = 512
weight_decay = 1000
train_features = torch.tensor(all_features[:n_train].values,dtype=torch.float32)
TypeError: can’t convert np.ndarray of type numpy.object_. The only supported types are: float64, float32, float16, complex64, complex128, int64, int32, int16, int8, uint64, uint32, uint16, uint8, and bool.
object类没被剔除啊,没法转换类型