1、R語言實際上是函數(shù)的集合,用戶可以使用base,stats等包中的基本函數(shù),也可以自己編寫函數(shù)完成一定的功能。但是初學(xué)者往往認為編寫R函數(shù)十分困難,或者難以理解。這里對如何編寫R函數(shù)進行簡要的介紹。
2、函數(shù)是對一些程序語句的封裝。換句話說,編寫函數(shù),可以減少人們對重復(fù)代碼書寫,從而讓R腳本程序更為簡潔,高效。同時也增加了可讀性。一個函數(shù)往往完成一項特定的功能。例如,求標準差sd,求平均值,求生物多樣性指數(shù)等。
3、R數(shù)據(jù)分析,就是依靠調(diào)用各種函數(shù)來完成的。但是編寫函數(shù)也不是輕而易舉就能完成的,需要首先經(jīng)過大量的編程訓(xùn)練。特別是對R中數(shù)據(jù)的類型,邏輯判別、下標、循環(huán)等內(nèi)容有一定了解之后,才好開始編寫函數(shù)。
4、對于初學(xué)者來說,最好的方法就是研究現(xiàn)有的R函數(shù)。因為R程序包都是開源的,所有代碼可見。研究現(xiàn)有的R函數(shù)能夠使編程水平迅速提高。
5、R函數(shù)無需首先聲明變量的類型,大部分情況下不需要進行初始化。一個完整的R函數(shù),需要包括函數(shù)名稱,函數(shù)聲明,函數(shù)參數(shù)以及函數(shù)體幾部分。
6、函數(shù)名稱,即要編寫的函數(shù)名稱,這一名稱就作為將來調(diào)用R函數(shù)的依據(jù)。
7、函數(shù)聲明,包括 FALSE這樣的邏輯類型變量,這就意味著,if內(nèi)部,往往是對條件的判別,例如 is.na, is.matrix, is.numeric等等,或者對大小的比較,如,if(x > 0), if(x == 1), if(length(x)== 3)等等。if后面,如果是1行,則花括號可以省略,否則就必須要將所有的語句都放在花括號中。這和循環(huán)是一致的。
本文到此結(jié)束,希望對大家有所幫助。