我已经尝试了很长一段时间来拆分我的测试数据。
> FDF <- read.csv.ffdf(file='C:\\Users\\William\\Desktop\\R Data\\TestData0812.txt', header = FALSE, colClasses=c('factor','factor','numeric','numeric','numeric','numeric'), sep=',')
> names(FDF)<- c('Date','Time','Open','High','Low','Close')
>
> # ID
> FDF2 <-FDF[1:100,]
> FDF2 <- as.ffdf(FDF2)
> a <- nrow(FDF2)
> # Take section of import for testing
> FDF2[1:3,]
Date Time Open High Low Close
1 1987.08.28 12:00 1.6238 1.6240 1.6237 1.6239
2 1987.08.28 12:01 1.6239 1.6240 1.6235 1.6236
3 1987.08.28 12:02 1.6236 1.6239 1.6235 1.6238
>
> ID <- data.frame(matrix(1:a, nrow = a, ncol=1 ))
> ID <- as.ffdf(ID)
> names(ID) <- c('ID')
> FDF3 <- cbind.ffdf2(ID, FDF2)
> # Create ID column and binds together
> FDF3[1:3,]
ID Date Time Open High Low Close
1 1 1987.08.28 12:00 1.6238 1.6240 1.6237 1.6239
2 2 1987.08.28 12:01 1.6239 1.6240 1.6235 1.6236
3 3 1987.08.28 12:02 1.6236 1.6239 1.6235 1.6238
我将使用它的文件是一个 ffdf 对象,因为它是 700mb。我想知道如何拆分数据集?
我当前的代码是;
T = ffdfdply(FDF3, split(FDF3$ID, rep(1:10,each=10)))
我已经在论坛和其他地方做了很多变化和研究。但是,为简单起见,我只包含了上面的示例。
运行时,上面的代码给了我以下错误;
ffdfdply (FDF3, split(FDF3$ID, rep(1:10, each = 10))) 中的错误:
split 的长度必须与 x 中的行数相同
我似乎无法理解为什么拆分rep(1:10, each = 10)
在一个数据集中不起作用> dim(FDF3)
[1] 100 7
即使每个拆分也没有完整的行数,我也希望执行拆分,可以说:T = ffdfdply(FDF3, split(FDF3$ID, rep(1:10,each=3)))
我已经在这上面做了至少 20 个小时。