windows下安裝pippython
cd到 C:\Python27\Scripts目錄下
執行 easy_install pip
安裝完成後,在Scripts目錄下生成pip工具算法
whl文件格式及安裝方法
whl是一種壓縮文件格式,其中包含py文件和編譯後的pyd文件
安裝whl包:pip install xxx.whl
更新whl包:pip install -U xxx.whlwindows
注意:安裝whl包以前須要先安裝wheel工具數組
安裝wheel:pip install wheelapp
numpy下載連接:http://www.lfd.uci.edu/~gohlke/pythonlibs/機器學習
安裝numpy:pip install numpy-xxx-xxx.whlide
錯誤記錄:安裝時,文件名中出現問號,多是因爲編碼問題致使,手動重命名文件後解決函數
scipy :SciPy是一款方便、易於使用、專爲科學和工程設計的Python工具包.工具
它包括統計,優化,整合,線性代數模塊,傅里葉變換,信號和圖像處理,常微分方程求解器等等學習
安裝Scipy函數庫,SciPy依賴Numpy
下載連接:http://www.lfd.uci.edu/~gohlke/pythonlibs/
安裝Scipy : pip install scipy-xxx-xxx.whl
matplotlib:Python繪圖庫,能夠繪製直方圖,功率譜,條形圖,錯誤圖,散點圖等
安裝matplotlib:直接運行 pip install matplotlib
或者下載whl安裝包安裝
下載地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/
scikit-learn(簡稱sklearn):sklearn是Scipy的擴展,創建在NumPy和matplotlib庫的基礎上;支持包括分類、迴歸、降維和聚類四大機器學習算法。還包含了特徵提取、數據處理和模型評估三大模塊
安裝:pip install -U scikit-learn
import numpy as np from sklearn.cluster import KMeans from sklearn.metrics import silhouette_score import matplotlib.pyplot as plt plt.subplot(3,2,1) #np.array()的類型是array x1=np.array([1,2,3,1,5,6,5,5,6,7,8,9,7,9]) x2=np.array([1,3,2,2,8,6,7,6,7,1,2,1,1,3]) #zip()函數,接收的參數是可迭代的對象 #返回的是一個list,list中的元素爲元組 #zip(x1,x2)就是將兩個數組中按順序對應的數字組成一個元組 #返回的是 [(1,1),(2,3),(3,2)...] #此處若是將x1和x2定義爲普通的list也可返回相同的list x=np.array(zip(x1,x2)).reshape(len(x1),2) #reshape()改變Array的維數,例如 #a = np.array([1,2,3,4,5,6,7,8]) #b = a.reshape(2,4) 形如:[[1,2,3,4],[5,6,7,8]] #c = a.reshape(2,2,2) 將a變成三維數組 plt.xlim([0,10]) plt.ylim([0,10]) plt.title('Instances') plt.scatter(x1,x2) colors=['b','g','r','c','m','y','k','b'] markers=['o','s','D','v','^','p','*','+'] clusters=[2,3,4,5,8] subplot_counter=1 sc_scores=[] for t in clusters : subplot_counter+=1 plt.subplot(3,2,subplot_counter) kmeans_model=KMeans(n_clusters=t).fit(x) for i,l in enumerate(kmeans_model.labels_): plt.plot(x1[i],x2[i],color=colors[l],marker=markers[l],ls='None') plt.xlim([0,10]) plt.ylim([0,10]) sc_score=silhouette_score(x,kmeans_model.labels_,metric='euclidean') sc_scores.append(sc_score) #程序運行出錯,提示字符出錯 plt.title('K=%s,silhouette coefficient= %0.03 f' % (t,sc_score)) plt.figure() plt.plot(clusters,sc_scores,'*-') plt.xlabel('Number of Cluster') plt.ylabel('Silhouette Coefficient Score') plt.show()