Questions tagged «lapply»

10
分组功能(tapply,by,aggregate)和* apply系列
每当我想在R中执行“ map” py任务时,我通常都会尝试使用该apply系列中的函数。 但是,我从未完全理解它们之间的区别-{ sapply,lapply等等} 如何将函数应用于输入/分组输入,输出将是什么样,甚至输入是什么-所以我经常只是遍历所有这些,直到我得到我想要的。 谁能解释什么时候使用哪一个? 我目前(可能不正确/不完整)的理解是... sapply(vec, f):输入是向量。输出是向量/矩阵,其中element i是f(vec[i]),如果f有多元素输出,则为您提供矩阵 lapply(vec, f):与相同sapply,但输出是列表? apply(matrix, 1/2, f):输入是一个矩阵。输出是一个向量,其中element i是f(矩阵的行/ col i) tapply(vector, grouping, f):输出是一个矩阵/数组,其中矩阵/数组中的元素是向量f分组g中的值,并g被推送到行/列名 by(dataframe, grouping, f):让g成为一个分组。适用f于组/数据框的每一列。漂亮地打印f每列的分组和值。 aggregate(matrix, grouping, f):类似于by,但不是将输出漂亮地打印出来,聚合将所有内容粘贴到一个数据框中。 附带的问题:我还没有学会摆弄或重塑-是否会全部取代plyr或reshape全部取代?
1040 r  lapply  sapply  tapply  r-faq 

12
在FUN中访问lapply索引名称
有没有办法在我的lapply()函数中获取列表索引名称? n = names(mylist) lapply(mylist, function(list.elem) { cat("What is the name of this list element?\n" }) 我之前询问过是否可以在返回的lapply()列表中保留索引名称,但是我仍然不知道是否有一种简单的方法来获取自定义函数中的每个元素名称。我想避免对名称本身调用lapply,我宁愿在函数参数中获取名称。
162 r  lapply  names  indices 

4
将几个参数传递给lapply(和其他* apply)的FUN
我在使用lapply中有一个关于将多个参数传递给函数的问题R。 当我将lapply与-的语法一起使用时,lapply(input, myfun);这很容易理解,我可以这样定义myfun: myfun <- function(x) { # doing something here with x } lapply(input, myfun); 和的元素input作为x参数传递给myfun。 但是,如果我需要传递更多的参数myfunc呢?例如,它的定义如下: myfun <- function(x, arg1) { # doing something here with x and arg1 } 如何通过传递两个input元素(作为x参数)和其他一些参数来使用此函数?
99 r  lapply 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.