自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

學(xué)習(xí)Python:做數(shù)據(jù)科學(xué)還是網(wǎng)站開(kāi)發(fā)?

大數(shù)據(jù)
Python編程語(yǔ)言擁有諸多用于網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)、圖形用戶界面、數(shù)據(jù)分析、數(shù)據(jù)可視化等工作的框架和特性。

Python

Python編程語(yǔ)言擁有諸多用于網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)、圖形用戶界面、數(shù)據(jù)分析、數(shù)據(jù)可視化等工作的框架和特性。Python可能不是網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)的理想選擇,但是正被很多機(jī)構(gòu)廣泛用于評(píng)估大型數(shù)據(jù)集(dataset)、數(shù)據(jù)可視化、進(jìn)行數(shù)據(jù)分析或制作原型。在數(shù)據(jù)科學(xué)領(lǐng)域,Python編程語(yǔ)言正不斷獲得用戶的親睞,而作為網(wǎng)絡(luò)開(kāi)發(fā)語(yǔ)言,Python顯得有點(diǎn)過(guò)時(shí)了。本篇博文,就是要對(duì)這兩種截然不同的Python使用方式,進(jìn)行詳細(xì)的對(duì)比,并且?guī)椭蠹颐靼滓稽c(diǎn):如果要利用Python做數(shù)據(jù)科學(xué)工作,并沒(méi)有必要了解它用于網(wǎng)絡(luò)開(kāi)發(fā)的部分。
 

面向數(shù)據(jù)科學(xué)的Python

從***金融機(jī)構(gòu)到最小的大數(shù)據(jù)創(chuàng)業(yè)公司,各行各業(yè)、各種規(guī)模的機(jī)構(gòu)都在使用Python編程語(yǔ)言支撐業(yè)務(wù)運(yùn)作。Python作為數(shù)據(jù)科學(xué)編程語(yǔ)言,不僅受***大數(shù)據(jù)公司歡迎,還有眾多技術(shù)創(chuàng)業(yè)企業(yè)擁泵。它還位列2015推薦學(xué)習(xí)的前10種編程語(yǔ)言。

世上只有兩種編程語(yǔ)言:一種是總是被人罵的,一種是從來(lái)沒(méi)人用的。 — Bjarne Stroustrup

Python屬于前一種,而且日益被用于數(shù)學(xué)計(jì)算、機(jī)器學(xué)習(xí)和多種數(shù)據(jù)科學(xué)應(yīng)用。除了性能依賴性強(qiáng)和底層的業(yè)務(wù)外,它能夠做其他任何事情。利用Python編程語(yǔ)言的***選擇,就是做數(shù)據(jù)分析和統(tǒng)計(jì)計(jì)算。學(xué)習(xí)面向網(wǎng)絡(luò)開(kāi)發(fā)的Python,需要程序員掌握像Django這樣的多種網(wǎng)絡(luò)框架協(xié)助建設(shè)網(wǎng)站;但是學(xué)習(xí)面向數(shù)據(jù)科學(xué)的Python,則要求數(shù)據(jù)科學(xué)家學(xué)習(xí)如何使用正則表達(dá)式和科學(xué)計(jì)算庫(kù),并掌握數(shù)據(jù)可視化的概念。由于目的、方向不同,那些不了解Python網(wǎng)絡(luò)開(kāi)發(fā)的程序員,能很輕松地走上利用Python編程語(yǔ)言做數(shù)據(jù)科學(xué)工作的道路。

Python是一個(gè)有著23年歷史的強(qiáng)大動(dòng)態(tài)編程語(yǔ)言,語(yǔ)言表現(xiàn)力很強(qiáng)。程序員編碼完成后,不需要編譯器即可運(yùn)行程序。面向網(wǎng)絡(luò)開(kāi)發(fā)的Python支持多種編程范式,包括結(jié)構(gòu)化編程(structured programming)、函數(shù)式編程(functional programming)和面向?qū)ο缶幊蹋╫bject-oriented programming, OOP)。Python代碼可以很容易地嵌入到許多擁有編程接口的網(wǎng)絡(luò)應(yīng)用中。但是,Python更是開(kāi)發(fā)學(xué)術(shù)研究和科學(xué)計(jì)算程序的***選擇,這些程序要求運(yùn)行快速、數(shù)學(xué)計(jì)算精確。

而面向網(wǎng)絡(luò)編程的Python,則要求程序員學(xué)習(xí)多種網(wǎng)絡(luò)開(kāi)發(fā)框架,這個(gè)學(xué)習(xí)難度比較大,因?yàn)楝F(xiàn)有Python網(wǎng)絡(luò)開(kāi)發(fā)框架的文檔不太容易理解。當(dāng)然,不容否認(rèn)的是,要想利用Python開(kāi)發(fā)一個(gè)動(dòng)態(tài)網(wǎng)站或網(wǎng)絡(luò)應(yīng)用,學(xué)習(xí)網(wǎng)絡(luò)框架是必需的。
 

Python網(wǎng)絡(luò)開(kāi)發(fā)框架

目前,Python社區(qū)已經(jīng)有多種免費(fèi)的網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)框架,比如:

Django

Django是幫助***主義者按時(shí)完成工作的Python網(wǎng)絡(luò)開(kāi)發(fā)框架(譯者注:原文是Django is the python web development framework for perfectionists with deadlines。這也是Django官網(wǎng)上對(duì)該框架的描述)。使用Django進(jìn)行網(wǎng)絡(luò)開(kāi)發(fā),最適合的場(chǎng)景是開(kāi)發(fā)那些依靠數(shù)據(jù)庫(kù)驅(qū)動(dòng),同時(shí)也具備類似自動(dòng)化后臺(tái)管理界面和模板系統(tǒng)等炫酷功能的應(yīng)用。對(duì)于不需要太多功能的網(wǎng)絡(luò)開(kāi)發(fā)項(xiàng)目來(lái)說(shuō),Django可能是大材小用,主要是它的文件系統(tǒng)容易讓人搞混,而且文件目錄結(jié)構(gòu)要求嚴(yán)格。使用Django進(jìn)行Python網(wǎng)絡(luò)開(kāi)發(fā)的公司有紐約時(shí)報(bào)、Instagram和Pinterest(譯者注:Pinterest聯(lián)合創(chuàng)始人Paul Sciarra在Quora上的回答提到了使用Django,Quora地址)。

Flask

Flask是針對(duì)初學(xué)者的框架,它簡(jiǎn)單,輕量,初學(xué)者很快就可以上手開(kāi)發(fā)單頁(yè)網(wǎng)絡(luò)應(yīng)用。這個(gè)框架并不支持驗(yàn)證,沒(méi)有數(shù)據(jù)抽象層和其他許多框架所包括的組件。它不是一個(gè)全棧開(kāi)發(fā)框架,也只用于小型網(wǎng)站的開(kāi)發(fā)。(譯者注:其實(shí)Pinterest也使用了Flask,只是沒(méi)用在整站開(kāi)發(fā)上,而是用來(lái)開(kāi)發(fā)API,具體見(jiàn)鏈接。)

CherryPy

CherryPy框架強(qiáng)調(diào)要符合Python語(yǔ)言規(guī)范,做到程序員像進(jìn)行面向?qū)ο缶幊桃粯娱_(kāi)發(fā)網(wǎng)絡(luò)應(yīng)用。它還是諸如TurboGears和Web2py等流行全??蚣艿幕A(chǔ)模板引擎。

還有很多其他框架,包括Pyramid、Bottle和Pylons等,但是無(wú)論P(yáng)ython開(kāi)發(fā)者使用哪一種框架,他/她都要花精力仔細(xì)地研究教程和文檔。
 

為什么使用Python進(jìn)行網(wǎng)絡(luò)開(kāi)發(fā)不現(xiàn)實(shí)?

Python作為網(wǎng)絡(luò)開(kāi)發(fā)語(yǔ)言,很可能是一個(gè)不太現(xiàn)實(shí)的選擇:

  • 面向網(wǎng)絡(luò)開(kāi)發(fā)的Python需要非標(biāo)準(zhǔn)化、昂貴的主機(jī)服務(wù),尤其是程序員使用流行的Python網(wǎng)絡(luò)框架開(kāi)發(fā)網(wǎng)站時(shí)。由于利用PHP進(jìn)行網(wǎng)絡(luò)編程如此的便捷,大部分的用戶沒(méi)有興趣在Python上投入太多的精力。
  • 面向網(wǎng)絡(luò)開(kāi)發(fā)的Python與諸如PHP、Java或Ruby on Rails等語(yǔ)言不同,不是一個(gè)經(jīng)常需要的技能。但是面向數(shù)據(jù)科學(xué)的Python卻越來(lái)越受歡迎,而且由于它更多地被用于機(jī)器學(xué)習(xí)和其他數(shù)據(jù)科學(xué)程序,Python更是招聘數(shù)據(jù)科學(xué)家的公司所最看重的技能。
  • 面向網(wǎng)絡(luò)開(kāi)發(fā)的Python已經(jīng)經(jīng)歷了較長(zhǎng)的發(fā)展,但是它的學(xué)習(xí)曲線并沒(méi)有像PHP這樣的網(wǎng)絡(luò)編程語(yǔ)言那么高。

 

為什么將Python用于數(shù)據(jù)科學(xué)是***的選擇?

Python編程是驅(qū)動(dòng)大數(shù)據(jù)、金融、統(tǒng)計(jì)和數(shù)字運(yùn)算的核心科技,而它的語(yǔ)法卻像英語(yǔ)一樣易懂。近來(lái),由于擁有多個(gè)針對(duì)機(jī)器學(xué)習(xí)、自然語(yǔ)言處理、數(shù)據(jù)視覺(jué)化、數(shù)據(jù)探索、數(shù)據(jù)分析和數(shù)據(jù)挖掘的插件,豐富的Python數(shù)據(jù)科學(xué)生態(tài)體系得到了較大的發(fā)展,甚至有將數(shù)據(jù)科學(xué)社區(qū)Python化的趨勢(shì)。今天,面向數(shù)據(jù)科學(xué)的Python已經(jīng)具備了清洗、轉(zhuǎn)換和處理大數(shù)據(jù)的所有工具。對(duì)于數(shù)據(jù)分析師崗位來(lái)說(shuō),掌握Python也是***的技能。一名具備Python編程能力的數(shù)據(jù)科學(xué)家,可以在紐約掙到平均年薪14萬(wàn)美元的工資。
 

為什么數(shù)據(jù)科學(xué)家喜歡使用Python語(yǔ)言?

Python

數(shù)據(jù)科學(xué)家喜歡那些能夠快速輸出原型,幫助他們輕松地記錄下自己的想法和模型的編程環(huán)境。他們喜歡通過(guò)分析巨量的數(shù)據(jù)集,得出結(jié)論,完成工作。而Python編程語(yǔ)言則是開(kāi)發(fā)數(shù)據(jù)科學(xué)應(yīng)用的多面手,因?yàn)樗軒椭鷶?shù)據(jù)科學(xué)家,以最短***的時(shí)間進(jìn)行編碼、調(diào)試、運(yùn)行并獲取結(jié)果,從而高效地完成工作。

一名技術(shù)嫻熟的企業(yè)數(shù)據(jù)科學(xué)家的真正價(jià)值,在于利用多種數(shù)據(jù)視覺(jué)化手段,向公司的不同利益相關(guān)者有效地傳遞數(shù)據(jù)模式和預(yù)測(cè)。否則,數(shù)據(jù)科學(xué)工作就是一場(chǎng)零和游戲。Python以其優(yōu)良特性,符合高強(qiáng)度科學(xué)計(jì)算的幾乎所有方面要求,這使得它成為在不同的數(shù)據(jù)科學(xué)應(yīng)用之間進(jìn)行編程的***選擇,原因很簡(jiǎn)單:開(kāi)發(fā)人員僅用一種語(yǔ)言就可以完成開(kāi)發(fā)和分析工作。面向數(shù)據(jù)科學(xué)的Python將企業(yè)業(yè)務(wù)的不同部分連接在一起,提供了一個(gè)數(shù)據(jù)分享和處理的直接媒介。

  • Python遵循統(tǒng)一的設(shè)計(jì)哲學(xué),注重可用性、可讀性,對(duì)于數(shù)據(jù)科學(xué)的學(xué)習(xí)曲線也較低。
  • Python有很高的可擴(kuò)展性,且與Matlab、Stata等語(yǔ)言相比,運(yùn)行更加快速。
  • 另外,Python生態(tài)系統(tǒng)中還在涌現(xiàn)出更多的數(shù)據(jù)視覺(jué)化庫(kù),以及炫酷的應(yīng)用編程結(jié)構(gòu),目的是使用圖形更好地展現(xiàn)數(shù)據(jù)分析的結(jié)果。Python社區(qū)有著諸如Sci-Kit learn、NumPy、Pandas、Statsmodel和SciPy等許多優(yōu)秀的數(shù)據(jù)分析庫(kù)。這些庫(kù)的數(shù)量還在不斷增長(zhǎng)。

Python

面向數(shù)據(jù)科學(xué)中數(shù)字處理與科學(xué)計(jì)算的Python編程

數(shù)據(jù)分析與Python編程語(yǔ)言十分契合。如果你決定要通過(guò)Python語(yǔ)言學(xué)習(xí)數(shù)據(jù)科學(xué),那么你應(yīng)該考慮的下一個(gè)問(wèn)題,就是Python庫(kù)中有哪些是可以完成大部分的數(shù)據(jù)分析工作?接下來(lái),我們給大家介紹全球的企業(yè)數(shù)據(jù)科學(xué)家都在使用的Python數(shù)據(jù)分析庫(kù)。

NumPy

Numpy是使用Python開(kāi)發(fā)的高級(jí)(high level)工具的基礎(chǔ)。這個(gè)庫(kù)不能用于高級(jí)數(shù)據(jù)分析,但是深入理解Numpy中面向數(shù)組的計(jì)算,可以幫助數(shù)據(jù)科學(xué)家有效使用Pandas庫(kù)。

SciPy

SciPy主要用于科學(xué)計(jì)算,擁有許多不同的模塊,可用于特殊函數(shù)、圖像處理、插值法(interpolation)、線性代數(shù)、常微分方程(ODE)求解器以及其他多種用途。這個(gè)庫(kù)還可以與NumPy數(shù)組一起使用,實(shí)現(xiàn)許多高效的數(shù)學(xué)運(yùn)算。

Pandas

Pandas是用于數(shù)據(jù)再加工***的庫(kù),因?yàn)樗沟锰幚磉z失的數(shù)據(jù)、自動(dòng)數(shù)據(jù)對(duì)齊(data alignment)變得更加簡(jiǎn)單,它還支持處理從不同的數(shù)據(jù)源收集而來(lái)的索引數(shù)據(jù)。

SciKit 這個(gè)流行的機(jī)器學(xué)習(xí)庫(kù)擁有多種回歸、分類和聚類算法,還支持gradient boosting、向量機(jī)、樸素貝葉斯模型和邏輯回歸。這個(gè)庫(kù)還被設(shè)計(jì)成能夠與NumPy和SciPy進(jìn)行交互。

Matplotlib

這是一個(gè)二維繪圖庫(kù),有著交互性很強(qiáng)的特性,生成的圖標(biāo)可以放大、推移,并且能夠用于發(fā)行刊物印刷出版。而且,還支持多平臺(tái)的交互環(huán)境。

Matplotlib、NumPy和SciPy是科學(xué)計(jì)算的基礎(chǔ)。還有許多其他的Python庫(kù),諸如用于網(wǎng)絡(luò)挖掘的Pattern,用于自然語(yǔ)言處理的NLTK,用于深度學(xué)習(xí)的Theano,用于爬取網(wǎng)絡(luò)的Scrappy,IPython,Statsmodels,Mlpy等。對(duì)于初學(xué)Python數(shù)據(jù)科學(xué)的人,他們需要很好地掌握上面提到的優(yōu)秀數(shù)據(jù)分析庫(kù)。

責(zé)任編輯:李英杰 來(lái)源: 愛(ài)數(shù)據(jù)
相關(guān)推薦

2009-07-01 16:54:20

JSP網(wǎng)站開(kāi)發(fā)教程

2011-05-18 13:47:32

2011-05-12 17:26:40

移動(dòng)網(wǎng)站CSS

2010-03-10 17:57:54

Python編程語(yǔ)言

2011-05-12 17:13:06

移動(dòng)網(wǎng)站標(biāo)記語(yǔ)言

2009-12-04 11:02:00

PHP語(yǔ)言優(yōu)缺點(diǎn)

2011-03-22 10:03:24

web網(wǎng)站開(kāi)發(fā)

2013-08-20 14:13:01

網(wǎng)站開(kāi)發(fā)編程

2009-07-01 18:34:59

JSP動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)

2009-11-27 11:08:11

PHP動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)

2009-06-01 11:16:48

PHP網(wǎng)站開(kāi)發(fā)變量作用域

2011-07-07 10:10:02

WEB

2009-07-30 15:18:11

2021-10-18 13:29:52

Golang網(wǎng)站開(kāi)發(fā)代碼

2009-02-24 10:26:11

網(wǎng)站程序開(kāi)發(fā)

2009-06-30 17:16:43

jsp網(wǎng)站開(kāi)發(fā)

2018-07-08 07:52:09

數(shù)據(jù)科學(xué)PythonR

2018-08-02 16:17:34

Python 開(kāi)發(fā)編程語(yǔ)言

2009-06-17 16:10:37

Java網(wǎng)站優(yōu)勢(shì)

2020-06-05 08:31:29

編程語(yǔ)言RPython
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)