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

温州阀门网站建设微营销平台系统

温州阀门网站建设,微营销平台系统,wordpress字体替换,wordpress搭建淘宝客自动获取在R语言中使用循环操作时是使用自身来实现的,效率较低。所以R语言有一个符合其统计语言出身的特点:向量化。R语言中的向量化运用了底层的C语言,而C语言的效率比高层的R语言的效率高。 apply函数族主要是为了解决数据向量化运算的问题&#x…

在R语言中使用循环操作时是使用自身来实现的,效率较低。所以R语言有一个符合其统计语言出身的特点:向量化。R语言中的向量化运用了底层的C语言,而C语言的效率比高层的R语言的效率高。

apply函数族主要是为了解决数据向量化运算的问题,以提高运行效率

一、apply()函数

它是apply()函数族中最简单的函数,它的作用是将一个函数运用到矩阵或数组的某个维度。

此函数有3个参数:

  1. X:输入的数据,一般是矩阵或数据框;
  2. FUN:需要使用的函数;
  3. GARGIN:指定函数在哪个维度上运行。其中1表示行,2表示列;如果是数组,还可以是更大的数字。

1、apply()函数运用到矩阵 

x <- matrix(1:24, 6, 4)
x
# 计算每一行的最小值
apply(X=x, MARGIN=1, FUN=min)
# 计算每一列的平均值
apply(X=x, MARGIN=2, FUN=mean)

# 将x中的一个元素改为NA,然后计算每一行的最小值
x[2,4] <- NA
apply(X=x, MARGIN=1, FUN=min)
# 使用min()函数中删除缺失值的参数na.rm
apply(X=x, MARGIN=1, FUN=min, na.rm=TRUE)

如下结果所示,当x中有NA时,得到的结果也会是NA。 

 2、apply()函数运用到数组

x <- array(1:24, dim=c(4,3,2))
x
apply(x, MARGIN=3, FUN=mean)

当MARGIN参数为向量时

x <- array(1:24, dim=c(4,3,2))
x
apply(x, MARGIN=c(1,3), FUN=mean)

MARGIN=c(1,3)表示对第1维(行)和第3维(深度/层)进行操作,而保持第2维(列)不变。

借助以下代码辅助理解。 

x <- array(1:24, dim=c(4,3,2))
x
apply(x, MARGIN=c(1,3), FUN=paste, collapse="-")

也可以在apply()函数中使用自定义函数或匿名函数:

apply(x, MARGIN = 3, FUN =function(x){list(range=range(x),mean=mean(x))})

二、lapply()函数

此函数允许输入数据为原子向量或递归向量,并将函数应用于输入数据的每一个元素,输出结果为与输入数据长度相同的列表。

它的参数是X和FUN,意义与apply()函数的一致。

1、输入数据为向量时

x <- 1:5
lapply(x, function(x){x^3})

2、输入数据为矩阵时

lapply()函数会将FUN中的函数应用于每个值,而不是按照列或行进行应用。

y <- matrix(1:4, 2, 2)
y
lapply(y, min)

3、输入数据为列表时

z <- list(x)
z
lapply(z,function(z){z^3}) 

4、输入数据为数据框时

lapply()函数会将FUN中的函数应用于每一列。

a <- data.frame(x=1:4,y=5:8)
a
lapply(a,max)

三、sapply()函数

sapply()函数其实是lapply()函数的灵活版本,除了X和FUN这两个参数外,它还多了simplify和USE.NAMES两个参数。

simplify:默认为TRUE,表示要求输出的结果为向量或矩阵;也可以让其等于array,表示输出结果为数组。

USE.NAMES:默认为TRUE,表示当输入为字符串时,将以字符串为输出命名。

a <- data.frame(x=1:4,y=5:8)
a
# 当simplify和USE.NAMES都默认为TRUE时
sapply(a,max)

当输入为字符串且USE.NAMES为TRUE时:

b = letters[1:5]
sapply(b,function(x) paste(x,"-",x))

当simplify和USE.NAMES都为FALSE时,sapply()函数的输出结果与lapply()函数完全一致。

a
sapply(a,max,simplify=FALSE, USE.NAMES=FALSE)
lapply(a,max)

四、vapply()函数

此函数与sapply()函数类似,仅多了一个FUN.VALUE的参数,此参数表示指定返回值的类型和形状。

x <- list(a=1:4,b=5:8,c=9:13)
x
sapply(x, function(x){x+2})
vapply(x, function(x){x+2}, FUN.VALUE=numeric(4))

通过FUN.VALUE=numeric(4)将返回值的长度设为4,如果其中某个返回值的长度不为4($c),就会报错。 

五、mapply()函数

 mapply()函数是sapply()函数的多变量版本。

在sapply()函数中,FUN参数指定的函数只能同时接受一个向量,而mapply()函数中的FUN参数指定的函数可以同时接受多个向量

如下所示,FUN中指定的函数接受了两个向量:2:6和10:14

mapply(FUN=function(x,y) c(x+y,x*y),2:6,10:14)

http://www.yayakq.cn/news/548632/

相关文章:

  • 河南网站建设找哪家crm系统免费
  • 领航 网站设计山东企业
  • 温州城市建设投资集团网站vk社交网站做婚介
  • 网站建设的落地页个人网站论文设计内容简介
  • 贵州城乡建设网站厂房设计装修公司
  • 建一个商城网站需要多少钱湖北建设局网站首页
  • 商丘做微信网站sqwyy提卡网站怎么做
  • 360网站推广官网球阀什么网站可以做投资
  • 商城网站建设报二手房网站建设书
  • 乐清网站建设yq01出库入库管理软件app
  • 网站建设 - 碧诺网络有没有做a的电影网站
  • 网站弹出文字做外贸兼职的网站有哪些
  • 青岛网页建站工具有关电子商务网站建设的 论文
  • 商城网站备案能通过吗淄博网站建设团队
  • 建好网站是不是还得维护看守所加强自身网站建设工作总结
  • 商城网站的建设定位公司在选择网站时应考虑什么
  • 怎样网站制作设计网站建设套餐介绍
  • 信息作业网站下载收到一张网站服务费怎么做凭证
  • 网站建设开票税率一键急速安装wordpress
  • 个人网站设计论文的结论房屋设计图用什么软件
  • 电商网站的意义邢台企业做网站价格
  • 韶关住房和城乡建设部网站网址入口
  • 网站首页页面代码电脑网站和手机网站怎么做相同路径
  • 英文网站营销wordpress 屏蔽特定国家ip
  • 灯饰网站源码红色大气网站模板
  • 河北中石化建设网站新闻门户网站是什么
  • 做阿里巴巴类似的网站吗电商平台搭建方案
  • 网站在线制作平台特色直播
  • 做二手车有哪些网站有哪些手续费连云港做电商网站的公司
  • 网站开发大概需要多少钱logo设计公司介绍