Python與R語(yǔ)言的共同特點(diǎn)
1.Python和R在數(shù)據(jù)分析和數(shù)據(jù)挖掘方面都有比較專(zhuān)業(yè)和全面的模塊,很多常用的功能,比如矩陣運(yùn)算、向量運(yùn)算等都有比較高級(jí)的用法
2.Python和R兩門(mén)語(yǔ)言有多平臺(tái)適應(yīng)性,linux、window都可以使用,并且代碼可移植性強(qiáng)
3.Python和R比較貼近MATLAB以及minitab等常用的數(shù)學(xué)工具
其實(shí)R也有很多自己特性,下面是它最顯著的幾個(gè)特性:
1、就是命令模式。Python雖然也支持命令模式,但是相對(duì)來(lái)說(shuō),更偏向于流程控制語(yǔ)句,也就是可以寫(xiě)一堆語(yǔ)句,然后執(zhí)行。R本身基本上不需要用到流程控制(當(dāng)然,它也支持流程控制)。
2、就是交互性。這樣是命令模式的一個(gè)特點(diǎn),敲回車(chē),出結(jié)果。但是又不像SPSS那種用鼠標(biāo)扎針的交互方式(在鍵盤(pán)上運(yùn)指如飛逼格瞬間提升很多……好萊塢大片里面,高手黑客都是不用鼠標(biāo)的,當(dāng)然,這樣很合理,SSH或者Telent到遠(yuǎn)程服務(wù)器上,怎么鼠標(biāo)?)
3、也是R語(yǔ)言特點(diǎn),統(tǒng)計(jì)學(xué)特性……好吧R語(yǔ)言與其他所有計(jì)算機(jī)語(yǔ)言本質(zhì)區(qū)別,就是它是一門(mén)統(tǒng)計(jì)學(xué)家發(fā)明的語(yǔ)言(其他語(yǔ)言,基本上都是碼農(nóng)發(fā)明的,當(dāng)然,也有數(shù)學(xué)家發(fā)明的),那么就有很多神奇特點(diǎn)。
比如:賦值的時(shí)候,不用等號(hào)(=),用的是指向(<-),帶來(lái)的問(wèn)題就是要寫(xiě)a<-5
這種語(yǔ)句,就需要a<(-5)這樣寫(xiě)。
Python與R語(yǔ)言的區(qū)別
數(shù)據(jù)結(jié)構(gòu)方面,由于是從科學(xué)計(jì)算的角度出發(fā),R中的數(shù)據(jù)結(jié)構(gòu)非常的簡(jiǎn)單,主要包括向量(一維)、多維數(shù)組(二維時(shí)為矩陣)、列表(非結(jié)構(gòu)化數(shù)據(jù))、數(shù)據(jù)框(結(jié)構(gòu)化數(shù)據(jù))。而Python則包含更豐富的數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)數(shù)據(jù)更精準(zhǔn)的訪(fǎng)問(wèn)和內(nèi)存控制,多維數(shù)組(可讀寫(xiě)、有序)、
元組(只讀、有序)、集合(唯一、無(wú)序)、字典(Key-Value)等等。
Python與R相比速度要快。Python可以直接處理上G的數(shù)據(jù);R不行,R分析數(shù)據(jù)時(shí)需要先通過(guò)數(shù)據(jù)庫(kù)把大數(shù)據(jù)轉(zhuǎn)化為小數(shù)據(jù)(通過(guò)groupby)才能交給R做分析,因此R不可能直接分析行為詳單,只能分析統(tǒng)計(jì)結(jié)果。
Python是一套比較平衡的語(yǔ)言,各方面都可以,無(wú)論是對(duì)其他語(yǔ)言的調(diào)用,和數(shù)據(jù)源的連接、讀取,對(duì)系統(tǒng)的操作,還是正則表達(dá)和文字處理,Python都有著明顯優(yōu)勢(shì)。而R是在統(tǒng)計(jì)方面比較突出。
以上內(nèi)容為大家介紹了python培訓(xùn)之Python和r語(yǔ)言的區(qū)別,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。