讀者朋友,在比較新的版本(python 2 >=2.7.9 or python 3 >=3.4)中,pip或者easy_install 擴充套件包命令已經預設安裝(可檢視 你的安裝目錄\python-(你的版本號)\scripts),不需要額外手動安裝,只需把安裝命令加入到環境變數即可。
1 以scikit learn 安裝為例子
scikit learn 是python下開源的機器學習包。(安裝環境:win7.0 32bit和python2.7)
方法一:命令列 easy_install packagesname
在官網
在命令列視窗執行
,安裝後,可在python2.7資料夾下生成scripts資料夾。把路徑d:\python27\scripts 新增到環境變數中,即可方便使用easy_install.exe命令了。
scikit-learn需要以下包或者工具:
在安裝matplotlib之前,需要安裝兩個輔助包,dateutil 和 pyparsing.
可以採用命令 easy_install python_dateutil和easy_install pyparsing安裝
後手動安裝matplotlib即可
importerror: no module named six; 可把路徑:
c:\python27\lib\site-packages\scipy\lib中的six.py six.pyc six.pyo三個檔案拷貝到c:\python27\lib\site-packages目錄下。
i cannot import datetime from a python script, valueerror: numpy.ufunc has the wrong size, try recompiling
考慮更換版本。
測試如下**:
1執行後:import
numpy as np
2import
matplotlib.pyplot as plt
34 x = np.arange(-5.0, 5.0, 0.1)
5 y = np.arange(-5.0, 5.0, 0.1)
67 x, y =np.meshgrid(x, y)
8 f = 17 * x ** 2 - 16 * np.abs(x) * y + 17 * y ** 2 - 225
910 fig =plt.figure()
11 cs = plt.contour(x, y, f, 0, colors = 'r'
)12 plt.show()
方法二:命令列 pip install packagesname
2 python ide推薦
windows 推薦安裝winpython
winpython 是由 python(x,y) 的作者開發,功能是比較全的,軟體包也比較新,gui基於pyqt, 不過相對於python(x,y),它主要是關注可攜式安裝體驗:你可以把它裝在u盤裡面。windows中可以不再使用python(x,y)了,改成 winpython了。現在的版本支援python2和3,穩定性已有相當的改善.發布的版本也比較全。winpython自帶了 spyder作為python開發環境,安裝時會自動安裝sypder。關於python ide介紹參看:
linux 可考慮安裝
anaconda
3 python與r的比較
python與r不同,python是一門多功能的語言。資料統計是更多是通過第三方包來實現的。
具體來說,我常用的python在統計上面的package有這樣一些
1.numpy與scipy。這兩個包是python之所以能在資料分析占有一席之地的重要原因。其中numpy封裝了基礎的矩陣和向量的操作,而scipy則在numpy的基礎上提供了更豐富的功能,比如各種統計常用的分布和演算法都能迅速的在scipy中找到。
2.matplotlib。這個package主要是用來提供資料視覺化的,其功能強大,生成的圖示可以達到印刷品質,在各種學術會議裡面出鏡率不 低。依託於python,可定製性相對於其他的圖形庫更高。還有乙個優點是提供互動化的資料分析,可以動態的縮放圖表,用做adhoc analysis非常合適。
3.scikit learn。非常好用的machine learning庫,適合於用於快速定製原型。封裝幾乎所有的經典演算法(神經網路可能是唯一的例外,不過這個有pylearn2來補充),易用性極高。
4.python標準庫。這裡主要是體現了python處理字串的優勢,由於python多功能的屬性和對於正規表示式的良好支援,用於處理text是在合適不過的了。
基本上就日常使用就涉及這些。符號運算等等也有sympy和theano等強力第三方庫來支援。總結,python在你列舉這些裡面是綜合功能最強大的,但是這些功能分散在第三方庫裡面,沒有得到有機的整合,相應的學習成本會較高。
其它意見:
python與r相比速度要快。python可以直接處理上g的資料;r不行,r分析資料時需要先通過資料庫把大資料轉化為小資料(通過groupby)才能交給r做分析,因此r不可能直接分析行為詳單,只能分析統計結果。python=r+sql/hive
r的優勢在於有包羅永珍的統計函式可以呼叫,特別是在時間序列分析方面(主要用在金融分析與趨勢**)無論是經典還是前沿的方法都有相應的包直接使用;相比python在這方面貧乏不少。
python的優勢在於其膠水語言的特性,一些底層用c寫的演算法封裝在python包裡後效能非常高效(python的資料探勘包orange canve 中的決策樹分析50萬使用者10秒出結果,用r幾個小時也出不來,8g記憶體全部佔滿)。
總的來說python是一套比較平衡的語言,各方面都可以,而r是在統計方面比較突出。但是資料分析其實不僅僅是統計,前期的資料收集,資料處理, 資料抽樣,資料聚類,以及比較複雜的資料探勘演算法,資料建模等等這些任務,只要是100m以上的資料,r都很難勝任,但是python卻基本勝任。
補充一下:python有專門的資料分析包pandas用來完成類似sql的功能,不過pandas是會把資料都load到記憶體裡,如果資料太大(2g以上)需要想辦法分chunk分析,或者用pytables/pyh5轉換為hdf5格式的檔案在硬碟上分析。
另外如果是windows環境的話,建議用winpython,上面提到的這些包會自帶。當然更豐富的是pythonxy可惜這個只有32位的。
sas和spss是商業資料分析軟體,本屌從來沒用過。
(完)
Python擴充套件包之shutil
os模組 提供了對目錄或者檔案的新建 刪除 檢視檔案屬性,還提供了對檔案以及目錄的路徑操作。比如說 絕對路徑,父目錄 但是,os檔案的操作還應該包含 移動 複製 打包 壓縮 解壓 等操作,這些os模組都沒有提供。shutil提供了 移動 複製 打包 壓縮 解壓等功能。1 shutil.copyfil...
Python擴充套件包
numpy提供了多種python本身不支援的多種集合,有list ndarray和ufunc。1.1 構造陣列import numpy as np 一維陣列 arr np.array 2,0,1,5,8,3 dtype np.float64 二維陣列 arr np.array 1,2,3,4 4,5...
Pycharm安裝擴充套件包
1.pip install 一般的pycharm都自帶有pip,如果沒有,就去下乙個pip的安裝包,將安裝包解壓在python的根目錄,搭建好python的環境,然後用python來安裝pip,基本上就可以在pycharm 的terminal介面或者命令提示介面直接安裝想要的擴充套件包了 可以用pi...