楼主: 我的素质低
3169 2

[R] 〖R〗关于lapply族函数 [推广有奖]

已卖:2774份资源

学术权威

83%

还不是VIP/贵宾

-

TA的文库  其他...

〖素质文库〗

结构方程模型

考研资料库

威望
8
论坛币
23391 个
通用积分
28308.6707
学术水平
2705 点
热心指数
2881 点
信用等级
2398 点
经验
228516 点
帖子
2968
精华
52
在线时间
2175 小时
注册时间
2012-11-24
最后登录
2024-1-13

一级伯乐勋章 初级学术勋章 初级热心勋章 初级信用勋章 中级热心勋章 中级学术勋章 中级信用勋章 高级学术勋章 高级热心勋章 高级信用勋章 特级学术勋章

楼主
我的素质低 学生认证  发表于 2015-2-12 14:09:02 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

apply函数族是R语言中极具特色的一个函数族群,包括apply、tapply、sweep、aggregate


看apply,apply的中文意思是应用,这个函数的意思是通过将一个函数应用到矩阵或数组中,返回一个向量或数组。


数形式:apply(x,MARGIN,FUN)


1、lapply应用





参考至:[程序问答] 关于lapply族函数。


坛友呵呵哼哼哈哈:

向大家请教下,关于lapply此类函数,输入参数只能是不带参数的嘛,能否输入像gsub等同时指定几个参数的函数吗?求高人指点,谢谢~~




ryoeng 坛友:


  1. L <- as.list(sample(LETTERS,replace=T))
  2. lapply(L, function(x) gsub('A','a',x))
  3. sapply(L, function(x) gsub('A','a',x))
复制代码



2、函数拓展




MARGIN对于不同的数据类型有不同的含义,如矩阵中1表示按行,2表示按列。FUN表示具体的运算方式



  1. ma <- matrix(c(1:4, 1, 6:8), nrow = 2)
  2. ma
  3. apply(ma, 1, mean)  #--> a list of length 2   按行取均值
  4. apply(ma, 1, quantile)# 5 x n matrix with rownames   按行取分位数
  5.      [,1] [,2] [,3] [,4]
  6. [1,]    1    3    1    7
  7. [2,]    2    4    6    8

  8. [1] 3 5
  9.      [,1] [,2]
  10. 0%      1  2.0
  11. 25%     1  3.5
  12. 50%     2  5.0
  13. 75%     4  6.5
  14. 100%    7  8.0
  15. 再看lapply和sapply
  16. > x <- list(a = 1:10, beta = exp(-3:3), logic = c(TRUE,FALSE,FALSE,TRUE))
  17. > x   列表形式
  18. $a
  19. [1]  1  2  3  4  5  6  7  8  9 10
  20. $beta
  21. [1]  0.04978707  0.13533528  0.36787944  1.00000000  2.71828183  7.38905610
  22. [7] 20.08553692
  23. $logic
  24. [1]  TRUE FALSE FALSE  TRUE
  25. > lapply(x,mean)
  26. $a
  27. [1] 5.5
  28. $beta
  29. [1] 4.535125
  30. $logic
  31. [1] 0.5
  32. > lapply(x, quantile, probs = 1:3/4)     对列表中每个数据集进行分位数计算
  33. $a
  34. 25%  50%  75%
  35. 3.25 5.50 7.75
  36. $beta
  37.       25%       50%       75%
  38. 0.2516074 1.0000000 5.0536690
  39. $logic
  40. 25% 50% 75%
  41. 0.0 0.5 1.0
  42. > sapply(x, quantile)              效果一样
  43.          a        beta logic
  44. 0%    1.00  0.04978707   0.0
  45. 25%   3.25  0.25160736   0.0
  46. 50%   5.50  1.00000000   0.5
  47. 75%   7.75  5.05366896   1.0
  48. 100% 10.00 20.08553692   1.0
复制代码



3、参考



参考至john5feng网易博客

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:lapply apply appl App Aggregate 中文意思 特色

已有 2 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
niuniuyiwan + 60 + 60 + 5 + 5 + 5 精彩帖子
xddlovejiao1314 + 60 + 60 精彩帖子

总评分: 经验 + 120  论坛币 + 120  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

本帖被以下文库推荐

心晴的时候,雨也是晴;心雨的时候,晴也是雨!
扣扣:407117636,欢迎一块儿吐槽!!

沙发
niuniuyiwan 在职认证  发表于 2015-11-10 11:05:54
感谢分享
已有 1 人评分经验 论坛币 收起 理由
xddlovejiao1314 + 10 + 3 鼓励积极发帖讨论

总评分: 经验 + 10  论坛币 + 3   查看全部评分

藤椅
xddlovejiao1314 学生认证  发表于 2015-11-10 11:54:33
谢谢分享。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-25 21:58