R语言中%>%的含义是什么

Python012

R语言中%>%的含义是什么,第1张

就是把左件的值发送给右件的表达式,并作为右件表达式函数第一个参数,就是管道函数。

例如:

anscombe_tidy <- anscombe %>%mutate(observation = seq_len(n()))

以上代码等价于:

anscombe_tidy=mutate(anscombe,observation = seq_len(n()))

扩展资料:

1、管道函数的作用

%>%来自dplyr包的管道函数,其作用是将前一步的结果直接传参给下一步的函数,从而省略了中间的赋值步骤,可以大量减少内存中的对象,节省内存。

符号%>%,这是管道操作,其意思是将%>%左边的对象传递给右边的函数,作为第一个选项的设置(或剩下唯一一个选项的设置)

2、管道函数的语法

在普通的函数中,使用dbms_output输出的信息,需要在服务器执行完整个函数后一次性的返回给客户端。如果需要在客户端实时的输出函数执行过程中的一些信息,在oracle9i以后可以使用管道函数(pipeline function)。

关键字PIPELINED表明这是一个oracle管道函数,oracle管道函数的返回值类型必须为集合,在函数中,PIPE ROW语句被用来返回该集合的单个元素,函数以一个空的RETURN 语句结束,以表明它已经完成。

例如:

create or replace type MsgType as table of varchar2(4000)

/

create or replace function f_pipeline_test return MsgType

PIPELINED as

begin

for i in 1 .. 10 loop

pipe row('Iteration ' || i || ' at ' || systimestamp)

sys.dbms_lock.sleep(1)

end loop

pipe row('All done!')

return

end

/

$curl = curl_init()

curl_setopt($curl,CURLOPT_URL,$_GET['url'])

curl_setopt($curl,CURLOPT_RETURNTRANSFER,true)

curl_setopt($curl,CURLOPT_USERAGENT,"Mozilla/4.0

(compatibleMSIE 6.0Windows NT 5.1SV1.NET CLR 1.1.4322.NET CLR 2.0.50727)")

$output = curl_exec($curl)

curl_close($curl)

print_r($output)

k <- list()

for(i in 1:1000)

{

  k[[i]] <- nn2()

}

newdata=c()                        #1

for(i in 1:1000)

{

#方法一:三次样条法

library(splines)

m1 <- lm(h~bs(a,df=3),data=k[[i]])

#预测百分位数值

new <- data.frame(a=7:20)

cs.p <- predict(m1, new)

#均方差

mse.cs <- sum( (st$p50-cs.p)^2 )/14

#最大范数误差

mne.cs <- max(abs(st$p50-cs.p))

newdata<-rbind(newdata,mse.cs)        #2

print(newdata)                        #3

}

aa<-mean(newdata)          #4

新建newdata来保存循环的结果,以便对循环的结果进行后续操作比如求均值并保存在aa中