import xlrd
import matplotlib.pyplot as plt
import numpy as np
from sklearn import model_selection
from sklearn.linear_model import logisticregression
from sklearn import metrics
data = xlrd.open_workbook('gua.xlsx')
sheet = data.sheet_by_index(0)
density = sheet.col_values(6)
sugar = sheet.col_values(7)
res = sheet.col_values(8)
# 讀取原始資料
x = np.array([density, sugar])
# y的尺寸為(17,)
y = np.array(res)
x = x.reshape(17,2)
# 繪製分類資料
f1 = plt.figure(1)
plt.title('watermelon_3a')
plt.xlabel('density')
plt.ylabel('ratio_sugar')
# 繪製散點圖(x軸為密度,y軸為含糖率)
plt.scatter(x[y == 0,0], x[y == 0,1], marker = 'o', color = 'k', s=100, label = 'bad')
plt.scatter(x[y == 1,0], x[y == 1,1], marker = 'o', color = 'g', s=100, label = 'good')
plt.legend(loc = 'upper right')
plt.show()
# 從原始資料中選取一半資料進行訓練,另一半資料進行測試
x_train, x_test, y_train, y_test = model_selection.train_test_split(x, y, test_size=0.5, random_state=0)
# 邏輯回歸模型
log_model = logisticregression()
# 訓練邏輯回歸模型
log_model.fit(x_train, y_train)
# **y的值
y_pred = log_model.predict(x_test)
# 檢視測試結果
print(metrics.confusion_matrix(y_test, y_pred))
print(metrics.classification_report(y_test, y_pred))
Python sklearn庫 資料預處理
python sklearn庫 資料預處理 資料集轉換之預處理資料 將輸入的資料轉化成機器學習演算法可以使用的資料。包含特徵提取和標準化。原因 資料集的標準化 服從均值為0方差為1的標準正態分佈 高斯分布 是大多數機器學習演算法的常見要求。如果原始資料不服從高斯分布,在 時表現可能不好。在實踐中,我...
python sklearn庫中的缺失值填充
今天小萌新複習資料探勘課程的知識點,當看到缺失值填充 imputation of missing values 部分,被sklearn庫中的transform函式搞暈了。看了幾篇前輩們的部落格,來這裡總結一下。請大家指正。原始資料中會有一些缺失的屬性值,一般人都會選擇自動填充。import nump...
Python sklearn 交叉驗證
from sklearn.datasets import load boston from sklearn.model selection import cross val score from sklearn.tree import decisiontreeregressor boston loa...