❶ python工具包如何安裝
python安裝工具包的方式總結一下:
1.、在spyder中安裝:
打開命令窗口:選擇Tools下的「open command prompt」,輸入:pip install 安裝包名字==版本號
例如:pip install numpy==1.13.3
2、在anaconda中安裝:
打開Anaconda Prompt,輸入:conda install -c conda-forge 安裝包名字==版本號
例如:conda install -c conda-forge numpy=1.13.3
3、在cmd中安裝:
在python的安裝包下的Scripts目錄下,打開命令窗口(也可以直接在文件加下按住Shift,點擊滑鼠右鍵,選擇「在此處打開 命令窗
口」),輸入:pip install 安裝包名字==版本號 或者: easy_install 安裝包名字==版本號 (pip找不到的包可以試一下)
例如:pip install numpy==1.13.3
4、卸載相應的安裝包
將對應命令中的install改成uninstall即可。
推薦學習《Python教程》。
❷ python數據挖掘工具包有什麼優缺點
【導讀】python數據挖掘工具包就是scikit-learn,scikit-learn是一個基於NumPy, SciPy,
Matplotlib的開源機器學習工具包,主要涵蓋分類,回歸和聚類演算法,例如SVM,
邏輯回歸,樸素貝葉斯,隨機森林,k-means等演算法,代碼和文檔都非常不錯,在許多Python項目中都有應用。
優點:
1、文檔齊全:官方文檔齊全,更新及時。
2、介面易用:針對所有演算法提供了一致的介面調用規則,不管是KNN、K-Means還是PCA.
3、演算法全面:涵蓋主流機器學習任務的演算法,包括回歸演算法、分類演算法、聚類分析、數據降維處理等。
缺點:
缺點是scikit-learn不支持分布式計算,不適合用來處理超大型數據。
Pandas是一個強大的時間序列數據處理工具包,Pandas是基於Numpy構建的,比Numpy的使用更簡單。最初開發的目的是為了分析財經數據,現在已經廣泛應用在Python數據分析領域中。Pandas,最基礎的數據結構是Series,用它來表達一行數據,可以理解為一維的數組。另一個關鍵的數據結構為DataFrame,它表示的是二維數組
Pandas是基於NumPy和Matplotlib開發的,主要用於數據分析和數據可視化,它的數據結構DataFrame和R語言里的data.frame很像,特別是對於時間序列數據有自己的一套分析機制。有一本書《Python
for Data Analysis》,作者是Pandas的主力開發,依次介紹了iPython, NumPy,
Pandas里的相關功能,數據可視化,數據清洗和加工,時間數據處理等,案例包括金融股票數據挖掘等,相當不錯。
Mlpy是基於NumPy/SciPy的Python機器學習模塊,它是Cython的擴展應用。
關於python數據挖掘工具包的優缺點,就給大家介紹到這里了,scikit-learn提供了一致的調用介面。它基於Numpy和scipy等Python數值計算庫,提供了高效的演算法實現,所以想要學習python,以上的內容得學會。
❸ Python包管理工具pip的安裝和使用
Python有兩個著名的包管理工具easy_install.py和pip。在Python2.7的安裝包中,easy_install.py是默認安裝的,而pip需要我們手動安裝。
方法1:利用常用curl獲取
>>後面是指定獲取的pip腳本的名字,也可以是curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
方法2:利用wget獲取,先要安裝wget
備註:看網上還有利用easy_install安裝pip,但是我嘗試了並沒有成功
原因是 Python.org sites 終止支持TLS1.0和1.1版本,TLS需要>=1.2
參考: https://stackoverflow.com/questions/49768770/not-able-to-install-python-packages-ssl-tlsv1-alert-protocol-version
主要命令:
所有命令中,最重要的兩個命令是install和uninstall。
pip支持四種方式安裝python包。
從PyPI安裝一個包
安裝一個全局區域的包,一般需要sudo許可權。在mac系統上,即使是管理員也無法安裝,自從OS X El Capitan及以後的版本包含了一套伍豎安全技術(System Integrity Protection簡稱為SIP)來防止惡意軟體修改系統保護區域。具體可參考SIP。因此,我們有時候需要將PyPI包安裝到用戶區,這個時候,可以用.
pip在升級軟體包之前會自動卸載舊的軟體包。
可以將所有需要安裝的包放入一個requirements.txt文件中,然後可以一次安枝知裝。requirements.txt 文件的每一行都要表明安裝的內容,而且盡量不要依賴文件中指定包的前後安裝順序。
從git安裝
從svn安裝
從一個分支安裝
還有很多其他的包安裝功能,但是上面的已經滿足了大部分需求。其他的請參考 文檔 。
pip uninstall可以卸載大部分的包,除了一下兩種情況
使用方式主要有兩種:
卸載單個包
卸載多個包
pip check用來驗證已安裝的包是否有兼容的依賴性問題。
上面的結果說明matplotlib包有兩個依賴包沒有安裝。
pip search用來腔搭大搜索名字或者摘要中包含搜索關鍵字的PyPI包。
選項只有一個,就是指定PyPI的url,默認url為 https://pypi.python.org/pypi
例如,search frida
以下兩者都可以用,結果同上。
pip list命令會按照字典序排列列舉已安裝的包,包括可編輯的包。
主要有如下選項:
輸出格式:
legacy:將要被廢棄
freeze
columns
json
當某些時候debug的時候,需要提供一個完整的python環境,python freeze提供了此功能,它能夠輸出機器上python環境的快照(所有已安裝的包)。
下面是freeze命令的選項:
輸出用戶區安裝的前5個安裝包:
pip show可以用來顯示每個包的具體信息。show命令只有一個選項 -f,用來顯示安裝包的文件列表。
$ pip show -f|--files packageName
更多命令請參考 文檔
pip默認的index-url是 https://pypi.python.org/pypi/ ,
為了提高速度,我們可以更改pip源為國內的阿里雲源。更改方法如下:
創建配置文件
添加阿里源
pip.conf內容如下:
❹ Python 中的可視化工具介紹
幾周前,R語言社區經歷了一場關於畫圖工具的討論。對於我們這種外人來說,具體的細節並不重要,但是我們可以將一些有用的觀點運用到 Python 中。討論的重點是 R 語言自帶的繪圖工具 base R 和 Hadley Wickham 開發的繪圖工具 ggplot2 之間的優劣情況。如果你想了解更多細節內容,請閱讀以下幾篇文章:
其中最重要的兩個內容是:
不是所有人都認同第二個觀點,ggplot2確實無法繪制出所有的圖表類型,但是我會利用它來做分析。
以下是 2016 年 4 月寫的關於繪圖工具的概述。出於多方面的原因,繪圖工具的選取更多地取決於個人偏好,因此本文介紹的 Python 繪圖工具也僅代表我的個人使用偏好。
Matplotlib 是一個強大的工具,它是 Pandas' builtin-plotting 和 Seaborn 的基礎。 Matplotlib 能夠繪制許多不同的圖形,還能調用多個級別的許多 API 。我發現 pyplot api 非常好用,你可能用不上 Transforms 或者 artists ,但是如果你有需求的話可以查閱幫助文檔。我將從 pandas 和 seaborn 圖開始介紹,然後介紹如何調用 pyplot 的 API 。
DataFrame 和 Series 擁有 .plot 的命名空間,其中有許多圖形類別可供選擇(line, hist, scatter, 等等)。 Pandas 對象還提供了額外的用於增強圖形展現效果的數據,如索引變數。
由於 pandas 具有更少的向後兼容的限制,所以它具有更好的美學特性。從這方面來說,我認為 pandas 中的 DataFrame.plot 是一個非常實用的快速探索性分析的工具。
Michael Waskom 所開發的 Seaborn 提供了一個高層次的界面來繪制更吸引人統計圖形。 Seaborn 提供了一個可以快速探索分析數據不同特徵的 API 介面,接下來我們將重點介紹它。
Bokeh 是一款針對瀏覽器開發的可視化工具。
和 matplotlib 一樣,**Bokeh
** 擁有一系列 API 介面。比如 glpyhs 介面,該介面和 matplotllib 中的 Artists 介面非常相似,它主要用於繪制環形圖、方形圖和多邊形圖等。最近 Bokeh 又開放了一個新的圖形介面,該介面主要用於處理詞典數據或 DataFrame 數據,並用於繪制罐頭圖。
以下是一些本文沒有提到的可視化工具:
我們將利用 ggplot2 中的 diamonds 數據集,你可以在 Vincent Arelbundock's RDatasets 中找到它(pd.read_csv(' http://vincentarelbundock.github.io/Rdatasets/csv/ggplot2/diamonds.csv') ),此外我們還需要檢測是否已經安裝 feather 。
[站外圖片上傳中……(4)]
Bokeh 提供了兩個 API,一個是低級的 glyph API,另一個是高級的 Charts API。
[站外圖片上傳中……(5)]
還不是很清楚我們應該在啥時候利用 Bokeh 來進行探索性分析,不過它的互動式功能可以激發我的興趣。就個人而言,由於習慣問題我平時仍然一直使用 matplotlib 來繪圖,我還無法完全切換到 Bokeh 中。
我非常喜歡 Bokeh 的儀表盤功能和 bokeh server 的 webapps。
[站外圖片上傳中……(6)]
[站外圖片上傳中……(7)]
[站外圖片上傳中……(8)]
matplotlib 並不局限於處理 DataFrame 數據,它支持所有使用 getitem 作為鍵值的數據類型。
[站外圖片上傳中……(9)]
[站外圖片上傳中……(10)]
我們從列變數的名字中提取出軸標簽,利用 Pandas 可以更加便捷地繪制一系列共享 x 軸數據的圖形。
[站外圖片上傳中……(11)]
[站外圖片上傳中……(12)]
本文中的剩餘部分將重點介紹 seaborn和為什麼我認為它是探索性分析的強大工具。
我強烈建議你閱讀 Seaborn 的 introctory notes,這上面介紹了 seaborn 的設計邏輯和應用領域。
我們可以通過一個穩定的且易懂的 API 介面來調用 Seaborn。
事實上,seaborn 是基於 matplotlib 開發的,這意味著如果你熟悉 pyplot API的話,那麼你可以很容易地掌握 seaborn。
大多數 seaborn 繪圖函數的參數都由 x, y, hue, 和 data 構成(並不是所有的參數都是必須的)。如果你處理的對象是 DataFrame,那麼你可以直接將列變數的名稱和數據集的名稱一同傳遞到繪圖函數中。
[站外圖片上傳中……(13)]
[站外圖片上傳中……(14)]
[站外圖片上傳中……(15)]
[站外圖片上傳中……(16)]
我們可以很輕易地探究兩個變數之間的關系:
[站外圖片上傳中……(17)]
[站外圖片上傳中……(18)]
或者一次探究多個變數之間的關系:
[站外圖片上傳中……(19)]
[站外圖片上傳中……(20)]
pariplot 是 PairGrid 的一個包裝函數,它提供了 seaborn 一個重要的抽象功能——Grid。Seaborn 的 Grid 將 matplotlib 中Figure 和數據集中的變數聯系起來了。
我們有兩種方式可以和 grids 進行交互操作。其一,seaborn 提供了類似於 pairplot 的包裝函數,它提前設置了許多常見任務的參數;其二,如果你需要更多的自定義選項,那麼你可以直接利用 Grid 方法。
[站外圖片上傳中……(21)]
[站外圖片上傳中……(22)]
[站外圖片上傳中……(23)]
34312 rows × 7 columns
[站外圖片上傳中……(24)]
[站外圖片上傳中……(25)]
FaceGrid 可以通過控制分面變數來生成 Grid圖形,其中PairGrid是它的一個特例。接下來的案例中,我們將以數據集中的 cut 變數為分面變數來繪制圖像:
[站外圖片上傳中……(26)]
[站外圖片上傳中……(27)]
最後一個案例展示了如何將 seaborn 和 matplotlib 結合起來。g.axes是matplotlib.Axes的一個數組,g.fig是matplotlib.Figure的一個特例。這是使用 seaborn 時常見的一個模式:利用 seaborn 的方法來繪制圖像,然後再利用 matplotlib 來調整細節部分。
我認為 seaborn 之所以吸引人是因為它的繪圖語法具有很強的靈活性。你不會被作者所設定的圖表類型所局限住,你可以根據自己的需要創建新的圖表。
[站外圖片上傳中……(28)]
[站外圖片上傳中……(29)]
[站外圖片上傳中……(30)]
[站外圖片上傳中……(31)]
本來,我打算準備更多的例子來介紹 seaborn,但是我會將相關鏈接分享給大家。Seaborn 的說明文檔寫的非常詳細。
最後,我們將結合 scikit-learn 來介紹如何利用 GridSearch 來尋找最佳參數。
[站外圖片上傳中……(32)]
[站外圖片上傳中……(33)]
[站外圖片上傳中……(34)]
原文鏈接: http://tomaugspurger.github.io/modern-6-visualization.html
譯者:Fibears
❺ python軟體開發的案例有哪些,可用於哪些開發
列舉一些比較有名的網站或應用。這其中有一些是用python進行開發,有一些在部分業務或功能上使用到了python,還有的是支持python作為擴展腳本語言。數據大部分來自Wikepedia和Quora。
Reddit - 社交分享網站,最早用Lisp開發,在2005年轉為python
Dropbox - 文件分享服務
豆瓣網 - 圖書、唱片、電影等文化產品的資料資料庫網站
Django - 鼓勵快速開發的Web應用框架
Fabric - 用於管理成百上千台Linux主機的程序庫
EVE - 網路游戲EVE大量使用Python進行開發
Blender - 以C與Python開發的開源3D繪圖軟體
BitTorrent - bt下載軟體客戶端
Ubuntu Software Center - Ubuntu 9.10版本後自帶的圖形化包管理器
YUM - 用於RPM兼容的Linux系統上的包管理器
Civilization IV - 游戲《文明4》
Battlefield 2 - 游戲《戰地2》
Google - 谷歌在很多項目中用python作為網路應用的後端,如Google Groups、Gmail、Google Maps等,Google App Engine支持python作為開發語言
NASA - 美國宇航局,從1994年起把python作為主要開發語言
Instrial Light & Magic - 工業光魔,喬治·盧卡斯創立的電影特效公司
Yahoo! Groups - 雅虎推出的群組交流平台
YouTube - 視頻分享網站,在某些功能上使用到python
Cinema 4D - 一套整合3D模型、動畫與繪圖的高級三維繪圖軟體,以其高速的運算和強大的渲染插件著稱
Autodesk Maya - 3D建模軟體,支持python作為腳本語言
gedit - Linux平台的文本編輯器
GIMP - Linux平台的圖像處理軟體
Minecraft: Pi Edition - 游戲《Minecraft》的樹莓派版本
MySQL Workbench - 可視化資料庫管理工具
Digg - 社交新聞分享網站
Mozilla - 為支持和領導開源的Mozilla項目而設立的一個非營利組織
Quora - 社交問答網站
Path - 私密社交應用
Pinterest - 圖片社交分享網站
SlideShare - 幻燈片存儲、展示、分享的網站
Yelp - 美國商戶點評網站
Slide - 社交遊戲/應用開發公司,被谷歌收購
❻ python打包成dist包
使用python內部基礎工具包Distutils打包程序:
在打包之前需要做的就是配置好安裝腳本,一般為setup.py文件;
示例(setup.py):
from distutils.core import setup
setup(name='Hello',
version='1.0',
description='example',
author='haomiao',
py_moles=['hello'])
該配置文件,只使用了py_moles參數,單一的模塊文件名hello.py,當然還有其他的屬性、選項可設置;hello.py應與setup.py在同一目錄下,分發的時候最好將該目錄作為單獨的一個目錄文件,並將其所依賴的或需要的文件、資源均放在這個目錄下或其子目錄下,該目錄就可以分發給其他開發人員或客戶(一般的最終客戶不會做這些安裝的繁瑣事情);
此外,若有其他的資源文件或是其他的多個py文件,則可以增加packages等其他相關的參數指令。
將該目錄模塊安裝到python中;執行:python setup.py install ,此後將會復制相關文件至python安裝路徑下的Lib/site-packages下,
如上示例將會在該路徑下產生:hello.py hello.pyc Hell-1.0-pyx.x.egg-info文件;在使用的時候直接:import hello即可使用。
在上述情況的基礎上打包,再使用sdist命令(用於源碼發布的形式)
執行:python setup.py sdist ,將產生兩個目錄build、dist以及MANIFEST列表文件,build下為中間文件可不用,dist下會打包成一個壓縮文件,如:Hello-1.0.zip;事實上,該壓縮文件內部包含之前的文件以及PKG-INFO的描述文件,這個時候該壓縮文件就可以分發給用戶;