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

凡科网站建设是免费的吗wordpress 谷歌头像

凡科网站建设是免费的吗,wordpress 谷歌头像,seo招聘要求,苏州网站建设网站建设文章目录applylapply, sapply, vapplyrapplytapplymapplyR语言系列: 编程基础💎循环语句💎向量、矩阵和数组💎列表、数据帧排序函数💎apply系列函数 R语言的循环效率并不高,所以并不推荐循环以及循环嵌套…

文章目录

    • apply
    • lapply, sapply, vapply
    • rapply
    • tapply
    • mapply

R语言系列:

  • 编程基础💎循环语句💎向量、矩阵和数组💎列表、数据帧
  • 排序函数💎apply系列函数

R语言的循环效率并不高,所以并不推荐循环以及循环嵌套。为了实现循环功能的情况下,兼顾效率,R语言提供了apply系列函数,用于对规则的数据进行函数式的迭代处理。

apply

apply函数作用于两个维度以上的数组或矩阵,其必要的输入参数有三,分别是待处理数据、用于循环的维度、处理函数,示例如下

data <- matrix(c(1:20), 5, 4)
apply(data, 1, mean)
# [1]  8.5  9.5 10.5 11.5 12.5

上述代码的含义是,对data的第一个维度,执行平均值mean操作,换言之,对每一行取平均值。data是5行4列的矩阵,每行取平均值,可得到拥有4个元素的向量。

apply也支持对多个坐标轴的数据进行操作,仍以data为例,若想对所有元素取根号,则可以写为下面这样,其结果于sqrt(data)相同

> apply(data, 1:2, sqrt)[,1]     [,2]     [,3]     [,4]
[1,] 1.000000 2.449490 3.316625 4.000000
[2,] 1.414214 2.645751 3.464102 4.123106
[3,] 1.732051 2.828427 3.605551 4.242641
[4,] 2.000000 3.000000 3.741657 4.358899
[5,] 2.236068 3.162278 3.872983 4.472136

lapply, sapply, vapply

apply不能作用于一维数组,lapplysapply补充了这一功能

> arr <- apply(data, 1, mean)
> apply(arr, 1, sqrt)
Error in apply(arr, 1, sqrt) : dim(X)的值必需是正数
> sapply(arr, sqrt)
[1] 2.915476 3.082207 3.240370 3.391165 3.535534
> lapply(arr, sqrt)
[[1]]
[1] 2.915476[[2]]
[1] 3.082207[[3]]
[1] 3.24037[[4]]
[1] 3.391165[[5]]
[1] 3.535534

从上面代码可知,二者主要区别是返回值,sapply会根据实际情况调整返回值,其返回逻辑为

  • 1个列表->向量
  • 多个长度相同的列表->矩阵,
  • 多个长度不同的列表->列表

相比之下,vapply可以更加灵活地选择输出数据类型

> vapply(arr, sqrt, numeric(1))
[1] 2.915476 3.082207 3.240370 3.391165 3.535534

rapply

rapply可以处理嵌套列表,其与lappy的区别试一下就知道

> x <- list(1,2,c(1:5))
> sapply(x, sqrt)
[[1]]
[1] 1[[2]]
[1] 1.414214[[3]]
[1] 1.000000 1.414214 1.732051 2.000000 2.236068> rapply(x, sqrt)
[1] 1.000000 1.414214 1.000000 1.414214 1.732051 2.000000 2.236068

换言之,rapply在执行的过程中,会不断地检查是否存在列表,如果存在列表,就把这个列表打开,其可用参数除了x, fun之外,还可指定处理的类别classes,以及处理方法howhow可选三个参数

  • "replace" 直接替换list中原来的元素
  • "list" 新建一个列表,元素类型复合classes则调用FUN
  • "unlist" 相当于对"list"模式下的结果调用unlist(recursive=TRUE)

tapply

tapply可对输入数据进行分组操作,下面以鸢尾花数据作为示例,来体验一下tapply的用法

> tapply(iris$Sepal.Length, iris$Species, mean)setosa versicolor  virginica 5.006      5.936      6.588 

iris提供了三种鸢尾花的长度、宽度等数据,其中iris$Species为其种类信息。上面代码的含义是,对iris的长度,按照相同的Species取平均值。

mapply

mapply的使用逻辑是,对两组相同维度的数据进行某种函数操作,类似于执行下面的操作

for(i in 1:N){func(L1[i], L2[i])
}

下面以两种不同类别的鸢尾花做个示例

L1<-iris[iris$Species=="setosa",]
L2<-iris[iris$Species=="virginica",]
max(L1$Sepal.Length, L2$Sepal.Length)
# 返回值为7.9,计算了所有数据中的最大值

下面通过mapply,可以发现对每种类别的50组数据进行了以一比对,并选择出了最大值

> mapply(max, L1$Sepal.Length, L2$Sepal.Length)[1] 6.3 5.8 7.1 6.3 6.5 7.6 4.9 7.3 6.7 7.2 6.5 6.4 6.8 5.7 5.8
[16] 6.4 6.5 7.7 7.7 6.0 6.9 5.6 7.7 6.3 6.7 7.2 6.2 6.1 6.4 7.2
[31] 7.4 7.9 6.4 6.3 6.1 7.7 6.3 6.4 6.0 6.9 6.7 6.9 5.8 6.8 6.7
[46] 6.7 6.3 6.5 6.2 5.9
http://www.yayakq.cn/news/820952/

相关文章:

  • 企业网站 自适应浙江省住房和城乡建设厅网站打不开
  • 网站快速有排名网络营销网络推广
  • 遵义创意网站设计网页实现方案
  • 盛世阳光-网站建设展示型网站制作服务
  • 怎么做一个企业网站苏州网站建设丨好先生科技
  • 网站背景跟着鼠标动的图怎么做福建省建筑信息平台
  • 有关网站建设的网站常用软件开发平台
  • 网站建设的行业客户久久信息网
  • 网站制作建设案例做网站制作公司
  • 江西省建设厅业绩网站重庆北碚网站制作
  • wordpress 分類seo免费课程视频
  • 怎么建网站链接计算机论文
  • 绵阳的网站制作公司网站个人中心模板
  • 网站建设费可以计入管理费用吗输入一组基因做网络图的网站
  • 黄骅港潮汐表2021网站制作方案专业乐云seo
  • 小程序网站开发机构网站项目的工作流程
  • 素材解析网站搭建网线制作顺序
  • 用c语言做公司网站亚马逊公司网站建设的目的
  • 淮安建设机械网站wordpress显示位置
  • 做移动网站开发朔州城市建设网站
  • 水果网站系统的建设与实现贪玩原始传奇官方网站
  • 网站刚做好怎么做优化长沙需要做网站的企业
  • 手机上怎么做微电影网站wordpress頂部公告插件
  • 谷歌网站推广策略方案成都网站建设行业分析
  • 临淄网站建设html所有标签及其属性汇总
  • 天津城市建设大学网站新媒体平台
  • 公司网页网站建设+ppt模板下载响应式网站建设品牌全网天下
  • 网站平台开发与应用面试app订制开发公司
  • 网站进入考核期要多久婚庆网站建设的需求分析
  • 网站 提交入口wordpress主题 推荐