当前位置: 首页 > news >正文

动态网站的常用软件百度提问首页

动态网站的常用软件,百度提问首页,专业展馆展厅设计,网站公司哪家最专业1-lapply()函数介绍: 为什么介绍这个函数呢?因为在windows中使用parLapply()函数和lapply()的结构和用法是非常相似的,我们只需要将原本用lapply(x, fun)迭代函数 直接改写成 parLapply(makeCluster(c1), x, fun)即可,这里的直接…

1-lapply()函数介绍:

为什么介绍这个函数呢?因为在windows中使用parLapply()函数和lapply()的结构和用法是非常相似的,我们只需要将原本用lapply(x, fun)迭代函数 直接改写成 parLapply(makeCluster(c1), x, fun)即可,这里的直接改写是非常简单的,只需要设置使用计算机的核数,后面的参数直接挪到parLapply()中。

lapply() :线性数据迭代

lapply是list(列表)和apply(应用)的组合,函数的作用:对一个列表型或者向量型数据应用一个函数,返回值不区分处理对象,皆是列表结构。这个函数开头的第一个字母“l”表明这个函数的返回类型为列表。

返回值的元素个数与处理对象中的元素个数相同。

该函数的语法结构为:

lapply(X, FUN...)

其中

  1. X代表需要执行运算的列表或者向量;
  2. FUN代表需要运行的函数,这个参数的自定义范围非常广,用户可以将几百行代码封装为要给function(函数)来设置该参数;
  3. 三个点 表示FUN中的相应参数设置。

例子1:

使用均值函数mean来分别计算向量x、y和z的平均值,最后结果会以列表的形式现实在console中。

> x <- 1:10
> y <- 1:10
> z <- 1:10
> lapply(list(x,y,z), mean)
[[1]]
[1] 5.5[[2]]
[1] 5.5[[3]]
[1] 5.5

 例子2:

> x <- c(1:10, NA)
> y <- c(1:10, NA)
> z <- c(1:10, NA)
> lapply(list(x,y,z), function(x) {mean(x, na.rm =T)})
[[1]]
[1] 5.5[[2]]
[1] 5.5[[3]]
[1] 5.5

例子3:

lapply函数等价于for循环,循环4次,每次花费时间5秒钟。总共预期花费时间为20秒=4*5秒

> for(i in 1:4){Sys.sleep(5)}
> lapply(1:4, function(i) Sys.sleep(5))
[[1]]
NULL[[2]]
NULL[[3]]
NULL

2-在Windows使用并行计算,使用parLapply()函数

2.1-并行计算的准备阶段:

只要开始执行并行,需要设置使用计算机的核数,以及关闭执行并行。

流程:设置并行计算的核数-->执行并行计算-->关闭并行计算的集群。

无论使使用哪种并行计算包,都是基于上述三个步骤,1-设置并行计算的核数;2 执行并行计算 3 关闭并行计算的集群。

library(parallel)

#Step1 设置并行计算使用的核数

num_cores <- detectCores(logical=FALSE) #返回的是计算机的物理核数 
cl <- makeCluster(num_cores)# 设置并行计算的核心数,这里num_cores是整数,合理即可
 
# Step2: 执行并行计算的任务
result <- parLapply(cl, x, fun)
 
# Step3: 关闭并行计算的集群
stopCluster(cl)

其中:detectCores()#这个函数中参数logical默认取值为TRUE,该函数返回的是计算机的线程数,如果设置logical=FALSE,返回的是物理核数/CPU。

例如计算机是12核24线程,

  • logical=TRUE,返回的是逻辑核数24线程;
  • logical=FALSE,返回的是物理核数12核。

2.2-parLapply()函数介绍

在Windows 系统中使用parLapply()函数替换lapply函数,进行并行计算,只不过多了一个参数即设置集群makeCluster()。 

也就是说,parLapply( )和lapply( )函数是相似的,在执行并行运算的时候,只需要把之前用lapply()函数写的部分

lappy(x, fun)

改写成 

parLapply(makeCluster(4), x, fun)

其中makeCluster(4) 设置并行计算的核数为4.

2.3-使用parLapply()函数编写执行并行计算

对上面的例子3,在windows系统中使用parLapply()函数执行并行计算:

> system.time(for(i in 1:4){Sys.sleep(5)})用户  系统  流逝 0.00  0.00 20.02> system.time(lapply(1:4,function(i)Sys.sleep(5)))用户  系统  流逝 0.02  0.00 20.02system.time(parLapply(makeCluster(4),1:4, function(i) Sys.sleep(5)))
用户 系统 流逝 
0.04 0.01 5.97 

3-在非Windows中使用mclapply()函数

例如,上面例子3使用mclapply函数执行并行计算

system.time(

mclapply(1:4, function(i) Sys.sleep(5), mc.cores=4) 

)

其中参数mc.cores它告诉mclapply()函数自动将独立计算拆分为多少个进程。

参考:

《R数据科学实践:工具详解与案例分析》(2019年6月出版,机工社)

《R的极客理想:量化投资篇》(2018年1月出版,机工社)

《R: Predictive Analysis》(2017年3月出版 中国图书进出口) (介绍了parLapply函数执行并行计算)

并行运算 R - 搜索结果 - 知乎 (zhihu.com)

【多核的春天】R语言里的并行计算 - 知乎 (zhihu.com) (介绍使用foreach函数执行并行计算)

R语言的并行计算 - 知乎 (zhihu.com) 

http://www.yidumall.com/news/26085.html

相关文章:

  • 网站建设和运营网站链接分析工具
  • 网站怎么做跳转安全域名注册需要多久
  • 个人站长做网站需要多少钱百度搜索网站
  • 可以做公众号背景图的网站英文seo是什么意思
  • php做直播类型的网站semicircle
  • 营销加盟网站建设贵港seo
  • 做网站公司郑州郑州的网站建设公司哪家好常州网站建设书生商友
  • 海外 推广网站优化大师客服
  • 网络营销的6大特点高明公司搜索seo
  • 网站 空间 服务器 免费怎么查询百度收录情况
  • 类似pc蛋蛋的网站建设开网店哪个平台靠谱
  • 贷款类网站怎样做网络推广客服好做吗
  • 做家教的网站2023全民核酸又开始了
  • discuz 做门户网站自助发外链网站
  • 莱阳网站建设自动点击器下载
  • 怎么做简单的网站首页网站推广怎么优化
  • 兰州论坛网站建设上海关键词排名手机优化软件
  • 沈阳黑酷做网站建设优化公司怎么样谷歌外贸网站
  • 做地产网站今日大新闻
  • 做的网站百度找不到了微博推广费用
  • 深圳哪个公司做网站好网站页面优化方法
  • 周口网站建设费用宽带业务如何推广
  • 海搜网做的网站怎么样整站优化是什么意思
  • 网站项目开发流程有哪七步深圳做网站的公司有哪些
  • 购物网站开发案例下载免费发帖平台
  • 网站上搜索的动图怎么做壁纸太原seo推广
  • 佛山网站建设3lue百度的网址是多少
  • 陕西省城乡建设网站北京网站
  • wordpress能做手机站吗百度一下首页官网
  • seo网站推广经理个人网页制作完整教程