所以我正在使用python开发SVR模型,程序可以正常运行。但是,我已经迷迷了好几天的问题是,我们如何能够通过NaN错误来运行SVR,以专门预测CSV单元中的缺失值NaN。只需一行数据集。
我曾尝试使用数组,但也找不到可行的解决方案: 1.在变量中设置NaN 2.预测NaN值,因为python不允许我出错 将NaN输出为CSV
dsmiss=pd.read_csv('C:/Users/sana/Desktop/100cellsmiss.csv')
y=dsmiss.iloc[1] #output var
x=np.sin(y) #input variable
xtrain, xtest, ytrain, ytest = train_test_split(x, y, test_size = 0.2)
#SVR calculation
svr_rbf = SVR(kernel='rbf', C=100, gamma=0.1, epsilon=.1)
svr_lin = SVR(kernel='linear', C=100, gamma='auto')
svr_poly = SVR(kernel='poly', C=100, gamma='auto', degree=3, epsilon=.1,
coef0=1)
y_rbf = svr_rbf.fit(xtrain.values.reshape(-1,1), ytrain.values.ravel()).predict(xtest.values.reshape(-1,1))
y_lin = svr_lin.fit(xtrain.values.reshape(-1,1), ytrain.values.ravel()).predict(xtest.values.reshape(-1,1))
y_poly = svr_poly.fit(xtrain.values.reshape(-1,1), ytrain.values.ravel()).predict(xtest.values.reshape(-1,1))
print (y_rbf)
print (y_lin)
print (y_poly)
我希望代码能够真正识别NaN并能够预测NaN