apply

    3热度

    3回答

    我有一个日期时间(POSIXct),一个 “节点”(因子)和和一个 “C”(数字)列的数据集,例如: date node c 1 2011-08-14 10:30:00 2 0.051236000 2 2011-08-14 10:30:00 2 0.081230000 3 2011-08-14 10:31:00 1 0.000000000 4 2011-08-14 10:31:

    44热度

    5回答

    我在想,如果在R中有一个内置函数将函数应用于矩阵的每个元素(当然,函数应该根据矩阵索引计算)。等效会是这样的: matrix_apply <- function(m, f) { m2 <- m for (r in seq(nrow(m2))) for (c in seq(ncol(m2))) m2[[r, c]] <- f(r, c) retur

    1热度

    1回答

    我有日期/时间信息,我希望获得按年份分组的“季节”日期的平均值,最小值,最大值,范围以及唯一的方法我一直以轻微的成功做到这一点,就是用tapply。最接近的是tapply中的汇总函数。结果是我只假设的是按年份的最小,最大,第一曲线,中位数等等。这些并不完全是我需要的,但工作正常。 结果的例子我从tapply功能得到1季: $`2003` Min. 1st Qu.

    2热度

    1回答

    我想将补丁应用到当前目录中的文件。修补程序文件中的路径仅显示/ FILETOPATCH.something b/FILETOPATCH.something。如果我在git中使用它,它不起作用。要修补的文件和.patch文件位于相同的目录中。 我尝试了许多变体中的--directory和-p选项,但没有成功。 使用patch -p1 < patchfile.patch工作正常。 如果我从.patch

    37热度

    2回答

    我有一个字符串的矢量。 d <- c("Mon","Tues","Wednes","Thurs","Fri","Satur","Sun") 为此,我想以与此相似的方式将字符串“day”粘贴到矢量的每个元素上。 week <- apply(d, "day", paste, sep='')

    0热度

    4回答

    我正在研究动态验证系统。出于某种原因,args array mainfunc传递给validateNumber的shift()不能正常工作。这里的代码输出在旁边的警告框注释: function mainfunc (func){ //this calls the function validateNumber and passes args to it. this[func].a

    2热度

    2回答

    我该如何应用按列向函数列表应用函数?例如,我有一个像下面这样的列表。 [[1]] [[1]][[1]] [,1] [,2] [,3] [1,] "b" "c" "d" [2,] "y" "y" "y" [3,] "z" "z" "z" [[1]][[2]] [,1] [,2] [,3] [1,] "b" "b" "c" [2,] "c" "d" "d" [3,

    3热度

    1回答

    我想将函数应用于R中矢量的渐进子集。我已经查看了我能找到的内容,并且应用和朋友不在那里,并且rollapply不起作用在直向量上,只有动物园/ ts对象。 vapply <- function(x, n, FUN=sd) { v <- c(rep(NA, length(x))) for (i in n:length(x)) { v[i] <- FUN(x[(i-n+

    1热度

    1回答

    我有两个矩阵的列数相同,但不同的行数: a <- cbind(runif(5), runif(5)) b <- cbind(runif(8), runif(8)) 我想这些在同一个列表关联,从而第一的a和b列相互关联,等等: my_result <- list(list(a[,1], b[,1]), list(a[,2], b[,2])) 所以结果是这样的: > print(my_res

    14热度

    4回答

    我想使用javascript apply()方法调用函数。如果函数没有参数,这工作正常。即 function test() { console.log(this); } body = document.getElementsByTagName("body")[0]; // shortcut to body element test.apply(body); // return