2017-10-17 40 views
1

所以我有这个代码的值:如何解决ValueError异常:输入包含的NaN,无穷大或过大的D型(“float64”)

####----Data----#### 
quest=pd.read_csv("inputFile.csv", names=["A1","A2",..."A200","Sim"]) 
print(quest.head()) 
    ####----Set up Data and Label----#### 
X=quest.drop('Sim',axis=1) 
y=quest['Sim'] 
    ####----Train Test Split----#### 
X_train, X_test, y_train, y_test = train_test_split(X, y) 
np.isfinite(X_train).any(), np.isfinite(y_train).any(),np.isfinite(X_test).any() 
np.isnan(X_train).any(), np.isnan(y_train).any(), np.isnan(X_test).any() 
    ####----Data Pre-Processing----#### 
scaler=StandardScaler() 
# Fit only to the training data 
X_scaled=scaler.fit(X_train) 
# Now apply the transformations to the data: 
X_train = scaler.transform(X_train) 
X_test = scaler.transform(X_test) 
    ####----Training the Model----#### 
mlp=MLPClassifier(hidden_layer_sizes=(13,13,13), max_iter=500) 
mlp.fit(X_train,y_train) 
print(mlp) 
    ####----Predictions and Evaluation----#### 
predictions=mlp.predict(X_test) 

print(confusion_matrix(y_test,predictions)) 
print(classification_report(y_test,predictions)) 

,但我得到这个错误:

回溯(过去最近一次调用): 文件 “E:\论文\ sk-ANN.py” 67行,在

X_scaled=scaler.fit(X_train)... 
ValueError: Input contains NaN, infinity or a value too large for dtype('float64'). 

我的数据集在指数形式值,如:

2.15E-06 -0.000556462 0.000197385 -0.000919 -0.000578077.... 

同样的错误发生在mlp.fit(X_train,y_train)预测= mlp.predict(X_test) 有人请帮助我如何解决这个问题

回答

2

我猜在输入数据中必须有nan值,所以在缩放值设置之前,所有的纳米都是平均值。列或设置为零,请参阅this

+0

我工作过..谢谢 –

相关问题