十一、apply家族(4)

tapply()函数

tapply()函数主要是用于对一个因子或因子列表,执行指定的函数调用,最后获得汇总信息。
tapply()函数的使用格式如下所示。
tapply(x, INDEX, FUN, ...)
x:要处理的对象。
INDEX:因子或分类的字符串向量或因子列表。
FUN:要使用的函数。
... :FUN函数所需要的额外参数。

R 复制代码
height = c(172, 175, 168, 173, 176)
gender = c('M','F', 'F', 'M', 'F')    #"F":女(female);"M":男(male)

tapply(height, gender, mean)          #求女性、男性身高的平均值
    F     M 
173.0 172.5

tapply(height, gender, max)          ##求女性、男性身高的最大值
  F   M 
176 173 

下面以R语言内置数据集鸢尾花iris为例。
鸢尾花的3种类型( 山鸢尾(setosa)、变色鸢尾(versicolor)和维吉尼亚鸢尾(virginica) )。

R 复制代码
head(iris)        #记录了花萼的长度、宽度;花瓣的长度、宽度;种类
  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.9         3.0          1.4         0.2  setosa
3          4.7         3.2          1.3         0.2  setosa
4          4.6         3.1          1.5         0.2  setosa
5          5.0         3.6          1.4         0.2  setosa
6          5.4         3.9          1.7         0.4  setosa

查看iris数据集的元素类型。

R 复制代码
sapply(iris, class)
Sepal.Length  Sepal.Width Petal.Length  Petal.Width      Species 
   "numeric"    "numeric"    "numeric"    "numeric"     "factor"    #数值;因子

计算不同种类鸢尾花的花瓣长度、宽度平均值。

R 复制代码
tapply(iris$Petal.Length, iris$Species, mean)    #不同种类花瓣长度的平均值
setosa versicolor  virginica 
 1.462      4.260      5.552


tapply(iris$Petal.Width, iris$Species, mean)     #不同种类花瓣宽度的平均值
setosa versicolor  virginica 
 0.246      1.326      2.026 
相关推荐
赵钰老师2 天前
基于R语言地理加权回归、主成份分析、判别分析等空间异质性数据分析
数据分析·回归·r语言
星座5282 天前
基于R语言的物种气候生态位动态量化与分布特征模拟实践技术
r语言·生态·物种
青春不败 177-3266-05203 天前
基于R语言的物种气候生态位动态量化与分布特征模拟
r语言·生态学·植被遥感·生物多样性·生态位·物种分布
生信小窝3 天前
079B-Zonae Cogito决策支持系统与R语言可视化结合的Marxan保护区规划课程【2027】
人工智能·python·r语言
xiao5kou4chang6kai43 天前
R语言+遥感:水环境监测全流程实战(水体指数/水深/水温/水质/可视化)
r语言·遥感·水环境
不知名的老吴4 天前
R语言4.3.0安装包百度网盘中文版下载与详细安装指南
开发语言·r语言
AAIshangyanxiu5 天前
基于R语言机器学习方法在生态经济学领域中的实践应用
人工智能·机器学习·r语言·生态经济学·经济学
阿_旭5 天前
【深度学习实战】Mask R-CNN肺部分割全流程:从数据到模型的完整指南
深度学习·r语言·cnn
Michelle80238 天前
R语言 for循环
开发语言·r语言
没有梦想的咸鱼185-1037-16639 天前
AI大模型支持下的顶刊绘图|散点图、气泡图、柱状图、热力图、柱状图、热力图、箱线图、热力图、云雨图、韦恩图、瀑布图、神经网络图、时间序列或分布展示
人工智能·神经网络·arcgis·信息可视化·数据分析·r语言·ai写作