def baseline_logisticRegression_crossValidate():
origin_train_data = pd.read_csv(r"data/train.csv")
process_data = fe_preprocessData(origin_train_data,'process_train_data') # ????????????
process_data_train,process_data_cv = train_test_split(process_data,test_size=0.2)
train_data = process_data_train.filter(regex='Survived|Age|SibSp|Parch|Fare|Cabin_.*|Embarked_.*|Sex_.*|Pclass_.*') # ???????????
train_np = train_data.as_matrix() # ????
'''??model'''
X_train = train_np[:,1:]
y_train = train_np[:,0]
model = linear_model.LogisticRegression(C=1.0,tol=1e-6).fit(X_train,y_train)
print pd.DataFrame({'columns':list(train_data.columns[1:]),'coef_':list(model.coef_.T)})
cv_data = process_data_cv.filter(regex='Survived|Age|SibSp|Parch|Fare|Cabin_.*|Embarked_.*|Sex_.*|Pclass_.*')
cv_np = cv_data.as_matrix()
X_cv = cv_np[:,1:]
y_cv = cv_np[:,0]
predictions = model.predict(X_cv)
print np.float32(np.sum(predictions == y_cv))/np.float32(predictions.shape[0])
'''?????????????????'''
error_items = origin_train_data.loc[origin_train_data['PassengerId'].isin(process_data_cv[predictions != y_cv]['PassengerId'].values)]
predictions_item = pd.DataFrame(data=process_data_cv[predictions != y_cv]['PassengerId'])
predictions_item.columns=['error_PassengerId']
error_result = pd.concat([error_items,predictions_item],axis=1)
error_result.to_csv(r'error.csv',index=False)
#=print pd.DataFrame({"columns":list(train_data.columns)[1:],"coef_":list(model.coef_.T)})
#=prediction = model.predict(X_test)
#=print np.float32(np.sum(prediction == y_test))/np.float32(prediction.shape[0])
'''??????'''
'''test_data = pd.read_csv(r"data/test.csv")
process_test_data = fe_preprocessData(test_data,'process_test_data',optimize=True) # ?????
test_data = process_test_data.filter(regex='Age|SibSp|Parch|Fare|Cabin_.*|Embarked_.*|Sex_.*|Pclass_.*')
test_np = test_data.as_matrix()
predict = model.predict(test_np)
result = pd.DataFrame(data={'PassengerId':process_test_data['PassengerId'].as_matrix(),'Survived':predict.astype(np.int32)})
result.to_csv(r'logisticRegression_result/prediction.csv',index=False)'''
#clf = linear_model.LogisticRegression(C=1.0,tol=1e-6)
#print cross_validation.cross_val_score(clf, X,y,cv=5)