plt.scatter(data_1.V1, data_1.V2, color='y', s=10) plt.scatter(data_0.V1, data_0.V2, color='b', s=10) plt.show() #%% regresión logística one VS all # primera regresión 1=1, 0=0, 2=0 ############################ index = data['Class'] != 1 data_1 = data.iloc[:, 2] data_1[index] = 0 x = data.iloc[:, 0:2] y = data_1 y = np.ravel(y) xa = plf(degree=2).fit_transform(x) reglog = linear_model.LogisticRegression( C=1) #crear el modelo, # la "c" es la c de la regresion regularizada reglog.fit(xa, y) # entrenar el modelo yg = reglog.predict(xa) cm = confusion_matrix(y, yg) print('\t Accuracy: %1.3f' % accuracy_score(y, yg)) print('\t Precision: %1.3f' % precision_score(y, yg)) print('\t Recall: %1.3f' % recall_score(y, yg)) print('\t F1: %1.3f' % f1_score(y, yg)) # Segunda regresión 1=0, 0=1, 2=0 ############################ data = pd.read_csv(data_file, header=None) data = data.iloc[0:3000, 0:3]
transform=v[:,index[0:20]] data_new=np.matrix(data)*np.matrix(transform) data_r=np.array(data_new)*np.matrix(transform.transpose()) medias=np.matrix(medias) data_r=data_r+medias resta_matrices=np.matrix(accidentes)-data_r #%% REGRESIONES #%% regresion con todas las variables x1=accidentes.iloc[:,0:30] y1=accidentes.iloc[:,30] xa1 = plf(degree=1).fit_transform(x1) reglog1=linear_model.LogisticRegression(C=1)#crear el modelo, # la "c" es la c de la regresion regularizada reglog1.fit(xa1,y1)# entrenar el modelo yg1=reglog1.predict(xa1) cm1=confusion_matrix(y1,yg1) print ('\t Accuracy: %1.3f' %accuracy_score(y1,yg1)) print ('\t Precision: %1.3f' %precision_score(y1,yg1)) print ('\t Recall: %1.3f' %recall_score(y1,yg1)) print ('\t F1: %1.3f' %f1_score(y1,yg1)) w1=reglog1.coef_ plt.bar(np.arange(len(w1[0])),w1[0]) wabs1=np.abs(w1) plt.bar(np.arange(len(wabs1[0])),wabs1[0])
'Cuenta_corriente_milesdeUSD', 'Mezcla_crudo_mexicano_USDxbarril', 'Deuda_publica_neta_en_USD', 'IPC', 'Tasa_interes_referencia', 'Estabilidad_politica', 'USDMXN' ] correlacion.index = [ 'Cuenta_corriente_milesdeUSD', 'Mezcla_crudo_mexicano_USDxbarril', 'Deuda_publica_neta_en_USD', 'IPC', 'Tasa_interes_referencia', 'Estabilidad_politica', 'USDMXN' ] suma = np.absolute(correlacion).sum(axis=0) - np.absolute(correlacion).USDMXN #%% Regresion multiple x = data_1.iloc[:, 0:6] y = data_1.iloc[:, 6:7] xa = plf(degree=1).fit_transform(x) reglog = linear_model.LinearRegression() reglog.fit(xa, y) # entrenar el modelo coef = reglog.coef_ yg = reglog.predict(xa) yg = pd.DataFrame(yg) coefficient_of_dermination = r2_score(y, yg) #### prueba regresion###### x = data.iloc[204:207, 1:7] xa = plf(degree=1).fit_transform(x) yg = reglog.predict(xa) yg = pd.DataFrame(yg) yg.columns = ['Prediccion']
data_new = np.matrix(data) * np.matrix(transform) data_r = np.array(data_new) * np.matrix(transform.transpose()) medias = np.matrix(medias) data_r = data_r + medias resta_matrices = np.matrix(data_m) - data_r suma = sum(resta_matrices) #%% normilizar datos después del PCA data_new = pd.DataFrame(data_new) data_new = data_new.apply(lambda x: (x - np.mean(x)) / (np.std(x))) data_new = np.matrix(data_new) #%% entrenar regresion con variables reducidas por componentes principales x2 = data_new[:, 0:num_variables] y2 = data_m_r xa2 = plf(degree=3).fit_transform(x2) reglog2 = linear_model.LogisticRegression( C=.9) #crear el modelo, # la "c" es la c de la regresion regularizada reglog2.fit(xa2, y2) # entrenar el modelo yg2 = reglog2.predict(xa2) cm2 = confusion_matrix(y2, yg2) print('\t Accuracy: %1.3f' % accuracy_score(y2, yg2)) print('\t Precision: %1.3f' % precision_score(y2, yg2)) print('\t Recall: %1.3f' % recall_score(y2, yg2)) print('\t F1: %1.3f' % f1_score(y2, yg2)) # seleccion post-modelado w1 = reglog2.coef_ wabs1 = np.abs(w1)
model_lda = LDA() # 建立LDA模型对象 model_lda.fit(x, y) # 将数据集输入模型并训练 convert_features = model_lda.transform(x) # 转换数据 print(convert_features.shape) # 打印形状 print(model_lda.explained_variance_ratio_) # 获得各成分解释方差占比 print(convert_features[:3]) # 打印前3条记录 # 使用sklearn的GBDT方法组合特征 model_gbdt = GBDT() model_gbdt.fit(x, y) conbine_features = model_gbdt.apply(x)[:, :, 0] print(conbine_features.shape) # 打印形状 print(conbine_features[0]) # 打印第1条记录 # 使用sklearn的PolynomialFeatures方法组合特征 model_plf = plf(2) plf_features = model_plf.fit_transform(x) print(plf_features.shape) # 打印形状 print(plf_features[0]) # 打印第1条数据 # 使用gplearn的genetic方法组合特征 data = datasets.load_boston() # 加载数据集 x, y = data.data, data.target # 分割形成x和y print(x.shape) # 查看x的形状 print(x[0]) # 查看x的第一条数据 model_symbolic = SymbolicTransformer(n_components=5, generations=18, function_set=('add', 'sub', 'mul', 'div', 'sqrt', 'log', 'abs', 'neg', 'inv', 'max', 'min'), max_samples=0.9,