R語言-編寫自定義函式
一、函式構造器
每一個R函式都包括三個部分:函式名,程式主體以及引數集合,在編寫自定義R函式時,需要將三個部分各自儲存在一個R物件中。這裡需要使用function函式,形如:
my_function<-function(){}
function函式可以將大括號內的程式碼內容構建成一個函式,例如:
roll<-function(){
dice<-sample(1:6,2,replace = T)#可重複抽樣
sum(dice)
}
roll()
函式將返回最後一行的執行輸出結果,如果最後一行不輸出結果,整個函式也將不會有返回值
二、含參函式的構造
可以通過在括號裡填入引數名稱加以實現,具體如下:
roll2<-function(bones){
dice<-sample(bones,2,replace = T)#可重複抽樣
sum(dice)
}
> roll2()
Error in sample(bones, 2, replace = T) :
argument "bones" is missing, with no default
> roll2(1:10)
[1] 11
可以發現如果不寫引數,R將報錯,為了防止類似的錯誤發生,可以預先設定一個初始預設值給bones引數,只需在括號裡用等號將預設值與引數相連即可。,形如:
roll3<-function(bones=1 :6){
dice<-sample(bones,2,replace = T)#可重複抽樣
sum(dice)
}
> roll3()
[1] 9
三、提取函式
就像其他語言的IDE一樣,RStudio也提供了抽取函式的功能,在R指令碼中選中對應的程式碼段,在選單欄中選擇Code>Extract Function即可。RStudio會詢問給函式取什麼名字,然後用function將所需函式包裝起來,並會自動檢查程式碼段中未定義的變數,將其設定為該函式的引數。
提取函式之後,同志們記得檢查一下,主要是看看有沒有什麼需要設定預設值的引數,或者函式有沒有返回值之類的問題。
四、檢視函式
不僅可以通過help檢視函式解釋,還可以通過直接輸入函式名檢視函式程式碼
這就是開源的好處哦~
相關推薦
R語言-編寫自定義函式
一、函式構造器 每一個R函式都包括三個部分:函式名,程式主體以及引數集合,在編寫自定義R函式時,需要將三個部分各自儲存在一個R物件中。這裡需要使用function函式,形如: my_function<-function(){} function函式可
R語言:自定義函式
R語言系列:自定義function 在用R語言做各種事物時,使用者自定義函式是不可或缺的。這期來講講如何自定義R的function。首先要介紹的是function的基本框架: myfunction <- function(arg1, arg2, .
hive報錯編寫自定義函式匯入依賴報錯 Missing artifact jdk.tools:jdk.tools:jar:1.6
少了一個jar包 <dependency> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> <version>1.
C語言_自定義函式使用用例
1 . 實現一個函式,列印乘法口訣表,口訣表的行數和列數自己指定 輸入9,輸出9*9口訣表,輸出12,輸出12*12的乘法口訣表。 #include<stdio.h> int m
sqlserver中編寫自定義函式中的返回值問題
寫了一個獲取符號間隔字串的函式,原先程式碼如下 CREATE FUNCTION funGetSubStr ( -- Add the parameters for the function here @StrParams nvarchar(4000), @char ch
R語言——自定義函式求置信區間
#求單正態均值mu的置信區間 #引數依次為置信水平alpha,正態樣本x,已知總體方差(預設為未知) mu <- function(alpha,x,sigma=NA){ n <- length(x) meanx <- mean(x) if(is
R語言學習筆記(四)流程函式及自定義函式
if(FALSE){條件執行} if(FALSE){if-else結構,多重判斷} if(FALSE){對score進行等級判定} score = 65 if(score >= 90){ pr
R語言自定義函式及基本分支迴圈結構
使用者自定義函式: 使用者自定義函式名<- function(引數列表){ 計算步驟n Return(函式值) } 分支結構: If(關係表示式){語句} If(關係表示式){語句}else{語句} Ifelse(關係表示式,語句1,語句2) switch(R物件,值
【C語言】字串處理自定義函式
1、字串求長度 #include <stdio.h> int Mystrlen1(const char *str) { int i=0; while(*(str++)!='\0') { i++; } return i; } int Mystrlen2(cons
c語言自定義函式,10月28日總結
現在時間23點34分,我想看看我幾點能完成 今天總結自定義函式的使用,先從最基礎的地方開始 1.形參實參 在定義函式的時候,函式大多數都有引數,在被主調函式需要傳遞資料給函式的引數 函式定義時用的變數叫形參 傳遞給函式的中形參值或變數叫實參 int m
按鍵精靈Q語言-怎麼使用自定義函式返回值
按鍵精靈怎麼使用自定義函式返回值? a i MessageBox i Function a(i) i=100 End Function 就是想彈出100 aiMessageBoxiFunctiona(i)i=100EndFunction就是想讓它彈出的是100怎麼獲得自定義函式中的值呢?...展
初階C-1103,C語言自定義函式練習
title: 初階C-1103 date: 2018-11-05 23:24:13 tags: C初階 1.實現一個函式,列印乘法口訣表,口訣表的行數和列數自己指定,輸入9,輸出99口訣表,輸入12,輸出1212的乘法口訣表。 #include<stdio.h> #inc
在c語言中自定義了一個函式,在main中呼叫時提示找不到識別符號
解決方案一: 把定義的函式放在,main函式之前。 void f() { printf("Hello"); } main() { f(); } 解決方案二: 在main函式之前宣告。 void f(); main() { f
C語言--自定義函式
【@C語言】關於自定義函式 return_type function_name([datetype|arg|],[datetype arg2],[…]) { //函式體 } 函式三要素: 函式返回值 函式名 引數列表 例子呀: //自定義函式的完整寫法 # include <s
模板語言 自定義函式simple_tag
模板語言自帶的一些處理函式:通過管道符來處理 幫助方法:{{ item.event_start|date:"Y-m-d H:i:s"}} 轉換成日期時間型{{ bio|truncatewords:"30" }} 只取前30個字元{{ my_list|first|upper }}&nbs
Hive自定義函式(UDF)的編寫及使用
前提條件: 1. 安裝好hadoop2.7.3(LInux環境下) 2. 安裝好Hive2.3.3,參考:Hive的安裝配置 3. 安裝好Maven(Windows環境下)參考:Maven安裝 4. 安裝好eclipse(Windows環境下) Hive自定義函
C語言_在自定義函式裡使用結構體_Cplus14.6
#include<stdio.h> #define FUNDLEN 50 struct fund {char bank[FUNDLEN];double bankfund;char save[FUNDLEN];double savefund; }; double
C語言學習-呼叫自定義函式
如何呼叫自定義函式 編寫一個程式,生成以下輸出: Brazil, Russia, India, China India, China, Brazil, Russia 除了main以外,該程式還要呼叫兩個自定義函式,一個名為br(),呼叫一次列印一次“Brazil, Russ
【C語言簡單說】七:自定義函式(2)
剛剛說了如何自定義函式。那只是最簡單的形式,那我們現在開始來說函式的返回值。我們先貼上之前的程式碼: #include<stdio.h> #include<stdlib.h>
DB2自定義函式(C語言)
1 總體介紹 基於DB2 V9.5 1.1 使用者自定義函式(UDF) DB2 內部提供了大量的函式,但仍然不足以滿足業務千奇百怪的需要。不過DB2提供了使用者自定義函式(User Defined Function,簡稱 UDF)功能。DB29.5版本的自定