繁体   English   中英

ffbase :: as.character中的“ by”参数有什么作用?

[英]What does the “by” argument in ffbase::as.character do?

在下面的帖子中,

在R中使用ffdfdply函数进行聚合

有这样一条线。

splitby <- as.character(data$Date, by = 250000)

只是出于好奇,我想知道by参数是指。 它似乎与ff数据帧有关,但我不确定。 Google搜索和as.characteras.vector R文档没有提供有用的信息。

我尝试了一些示例,但是下面的代码给出了相同的结果。

d <- seq.Date(Sys.Date(), Sys.Date()+10000, by = "day")
as.character(d, by=1)
as.character(d, by=10)
as.character(d, by=100)

如果有人能告诉我这是什么,我将不胜感激。 先感谢您。

由于as.character.ff在内部使用默认的as.character ,并且鉴于df向量可能大于RAM,因此需要对数据进行分块处理。 chunk功能有助于将chunk划分为多个块。 在这种情况下,相关方法是chunk.ff_vector 默认情况下,这将通过将getOption("ffbatchbytes")除以记录大小来计算块大小。 但是,可以通过使用by提供块大小来覆盖此行为。

在您给出的示例中,ff向量将一次转换为250000个character成员。

最终的结果将是任何一样by或不by的。 较大的值将导致更多地临时使用RAM,但可能会更快地进行操作。

首先,该函数是ffbase::as.character ,而不是普通的旧base::as.character

请参阅http://www.inside-r.org/packages/cran/ffbase/docs/as.character.ff ,其中显示

as.character((x, ...))

Arguments:
x: a ff vector
...: other parameters passed on to chunk

因此, by参数将传递给某些chunk函数。 然后,您需要确定正在使用哪个程序包的chunk功能。 输入?chunk ,告诉我们哪个,然后阅读其文档以查看其by参数的作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM