假设我有一个从Yahoo获取数据的函数,名为Yahoo.Fetch,我在该函数上运行一个do.call,它将是:
do.call(merge.xts, lapply(list.of.tickers, Yahoo.Fetch))
Run Code Online (Sandbox Code Playgroud)
默认将不得不all=TRUE在merge.xts,所以我会怎么能够在do.call指定有all=FALSE?这只是一个例子,但我想知道如何在apply,do.call,lapply函数中更改和指定参数.
我想创建一个大小的网格划分N倍N哪里N是字段数。我试图得到的网格图有点像 Weka 中的图:一个多图,其中每一行都是数据框的一个字段,每列也是一个字段。诀窍是我想获得矩阵散点图的更通用版本。我想要更丰富的数据,没有重复:例如,对角线值可以有分布。
威卡。矩阵散点图浪费了很多空间,我们可以丰富它吗?
基本的R解决方案1.plot(iris)同样的浪费空间的问题,为什么我们有对角线?
看起来像是从维基百科以某种方式使用 R 基本命令创建的 R 解决方案 2。
R 中的小演示(计算时间太长)
library(gridExtra)
library(grid)
library(ggplot2)
#library(lattice)
data(iris)
p1 <- ggplot(data=iris,aes(x=Sepal.Length, y=Sepal.Length)) + geom_point()
p2 <- ggplot(data=iris,aes(x=Sepal.Length, y=Sepal.Width)) + geom_point()
p3 <- ggplot(data=iris,aes(x=Sepal.Length, y=Petal.Length)) + geom_point()
p4 <- ggplot(data=iris,aes(x=Sepal.Length, y=Petal.Width)) + geom_point()
p5 <- ggplot(data=iris,aes(x=Sepal.Length, y=Species)) + geom_point()
grid.arrange(p1, p2, p3, p4, p5, ncol=length(names(iris)))
#ERROR: In as.list(X): reached elapsed time limit
# https://cran.r-project.org/web/packages/gridExtra/vignettes/arrangeGrob.html
Run Code Online (Sandbox Code Playgroud)
及其会话信息
version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: …Run Code Online (Sandbox Code Playgroud)