溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么使用Python建立數(shù)據(jù)分析項(xiàng)目

發(fā)布時(shí)間:2022-05-27 09:32:43 來(lái)源:億速云 閱讀:122 作者:zzz 欄目:大數(shù)據(jù)

這篇文章主要講解了“怎么使用Python建立數(shù)據(jù)分析項(xiàng)目”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么使用Python建立數(shù)據(jù)分析項(xiàng)目”吧!

這些網(wǎng)站在項(xiàng)目構(gòu)建方面的思路大致如下:

一個(gè)連貫且組織良好的結(jié)構(gòu),以便于人們協(xié)作;你的分析應(yīng)當(dāng)可復(fù)現(xiàn),而你的項(xiàng)目結(jié)構(gòu)可以滿足這個(gè)需求;不應(yīng)該從原始數(shù)據(jù)作為出發(fā)點(diǎn)開(kāi)始你的項(xiàng)目,而應(yīng)當(dāng)假設(shè)原始數(shù)據(jù)不變,創(chuàng)建其他派生的文件。

簡(jiǎn)略的項(xiàng)目結(jié)構(gòu)如下所示:

example_project/

├── data/ <- The original, immutable data dump.

├── figures/ <- Figures saved by notebooks and scripts.

├── notebooks/ <- Jupyter notebooks.

├── output/ <- Processed data, models, logs, etc.

├── exampleproject/ <- Python package with source code.

│ └── __init__.py <-- Make the folder a package.

└── process.py <-- Example module.

├── tests/ <- Tests for your Python package.

└── test_process.py <-- Tests for process.py.

├── environment.yml <- Virtual environment definition.

├── README.md <- README with info of the project.

└── setup.py <- Install and distribute your module.

你可以在這里看到相關(guān)實(shí)例。

項(xiàng)目通常遵循另一種結(jié)構(gòu):

原始數(shù)據(jù)不變,存儲(chǔ)在 data/ 中;

數(shù)據(jù)處理和相關(guān)輸出圖分別存儲(chǔ)在不同的文件夾下,例如: figures/ 和 output/ ;

筆記文件存儲(chǔ)在 notebooks/ ;

項(xiàng)目信息撰寫(xiě)在 README.md 中;

項(xiàng)目代碼放置在獨(dú)立的文件夾下。

實(shí)際上,你選擇什么樣的項(xiàng)目結(jié)構(gòu)并不重要,只要它能符合你的工作流程,你也能堅(jiān)持使用它。你應(yīng)該嘗試去理解何為項(xiàng)目,從而選擇滿足要求的項(xiàng)目結(jié)構(gòu)。

虛擬環(huán)境

項(xiàng)目之間應(yīng)當(dāng)相互獨(dú)立,你肯定不希望新的項(xiàng)目打亂了之前的工作成果。我們可以通過(guò)把不同項(xiàng)目的文件存儲(chǔ)在不同的文件夾下實(shí)現(xiàn)獨(dú)立性,但是不同項(xiàng)目之間也應(yīng)當(dāng)使用不同的 Python 環(huán)境。在此我向大家推薦一個(gè)大數(shù)據(jù)技術(shù)交流圈: 658558542 突破技術(shù)瓶頸,提升思維能力

虛擬環(huán)境依賴于不同的項(xiàng)目而相互獨(dú)立,避免了包的沖突問(wèn)題。每個(gè)虛擬環(huán)境都安裝了特定版本的不同包。虛擬環(huán)境一中安裝了版本為 1.11 的 numpy 庫(kù)和版本為 0.18 的 pandas 庫(kù),而虛擬環(huán)境二中則僅僅安裝了版本為 0.17 的 pandas 庫(kù)。作者選取適用于數(shù)據(jù)科學(xué)的 conda 管理虛擬環(huán)境(可在 這里 看到選擇它的原因)。

下列命令可以創(chuàng)建一個(gè)使用 Python 3.5 的新的 conda 虛擬環(huán)境,命名為 example_project :

$ conda install --name example_project python=3.5

激活虛擬環(huán)境( Windows 系統(tǒng)下將 source 省去):

$ source activate example_project

之后便可以安裝所需的包了:

$ conda install pandas numpy jupyter scikit-learn

當(dāng)你在不同的項(xiàng)目間跳轉(zhuǎn)時(shí),可以運(yùn)行 source deactivate 命令取消激活,并激活新的項(xiàng)目虛擬環(huán)境。

一旦你熟練使用 activate 和 deactivate 命令,就會(huì)發(fā)現(xiàn)虛擬環(huán)境是一個(gè)很輕巧的工具來(lái)保證 Python 環(huán)境的獨(dú)立。通過(guò)導(dǎo)出環(huán)境定義文件(例如,所有安裝的包名和版本號(hào)),你的項(xiàng)目就很容易得到復(fù)現(xiàn)了。如果你想查看更多細(xì)節(jié),可在 Tim Hopper 的博文 中看到。

Git

每個(gè)項(xiàng)目都應(yīng)該有自己的 Git 資源庫(kù)。在每個(gè)項(xiàng)目創(chuàng)建一個(gè)資源庫(kù)可以幫助你追蹤每個(gè)項(xiàng)目的歷史和解決在不同的項(xiàng)目間復(fù)雜的版本依賴問(wèn)題。

又或者,你可以選擇在一個(gè)資源庫(kù)中包含多個(gè)項(xiàng)目,將所有內(nèi)容存儲(chǔ)在一個(gè)位置。這樣做的缺點(diǎn)在于往往會(huì)因?yàn)楹喜_突問(wèn)題而告終(數(shù)據(jù)科學(xué)家通常并不能熟練使用 Git )。除了很多使用 Git 時(shí)出現(xiàn)的問(wèn)題,這也會(huì)導(dǎo)致你的項(xiàng)目之間缺乏獨(dú)立性。

創(chuàng)建 Git 資源庫(kù)最簡(jiǎn)單的方法就是在你的 Git 遠(yuǎn)程主機(jī)托管服務(wù)(例如, Github 和 GitLab)上創(chuàng)建一個(gè)新的 Git 資源庫(kù),然后把它復(fù)制到本地:

$ git clone https://github.com/hgrif/example-project.git

你可以在這個(gè)空文件夾下構(gòu)建你的項(xiàng)目結(jié)構(gòu)。

如果你按照這個(gè)步驟執(zhí)行,并準(zhǔn)備在一個(gè)新文件夾下創(chuàng)建一些文件了。那么,你首先還需要在電腦上對(duì) git 資源庫(kù)進(jìn)行初始化:

$ git init

然后在你的遠(yuǎn)程主機(jī)上創(chuàng)建一個(gè)新的 git 資源庫(kù),得到它的鏈接,并運(yùn)行下列命令:

$ git remote add origin https://github.com/hgrif/example-project.git

該命令會(huì)添加鏈接為 https://github.com/hgrif/example-project.git 的遠(yuǎn)程資源庫(kù),并命令為 origin 。你可能需要把現(xiàn)有的 master 分支推送到 origin 上:

$ git push --set-upstream origin master

在你的項(xiàng)目目錄下創(chuàng)建 .gitignore 文件可以避免將圖或數(shù)據(jù)誤填加進(jìn)資源庫(kù)中。作者一般使用 針對(duì) Python 的 .gitignore 文件 ,并且在文件中加入 data/ 、 figures/ 和 output/ 文件夾,以便 Git 可以忽略它們。

既然 Git 已經(jīng)設(shè)置好了,你就可以對(duì)核心內(nèi)容使用 git add 和 git commit 命令了!

使用工具

使用一些工具可以幫助你擺脫那些重復(fù)性工作。

Python 中的 cookiecutter 包可根據(jù)模板自動(dòng)創(chuàng)建項(xiàng)目文件夾。你可以使用現(xiàn)有的模板,例如, Cookiecutter Data Science 或者 作者的項(xiàng)目結(jié)構(gòu)模板 ,或是創(chuàng)建你自己新的模板。

使用虛擬環(huán)境最好的方法就是選用支持它們的編輯器,比如: PyCharm 。你也可以使用 autoenv 或者 direnv 去激活虛擬環(huán)境,并設(shè)置環(huán)境的變量,如果你 cd 定位到一個(gè)工作目錄下的話。

感謝各位的閱讀,以上就是“怎么使用Python建立數(shù)據(jù)分析項(xiàng)目”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么使用Python建立數(shù)據(jù)分析項(xiàng)目這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI