我有很多8208行的數據框,並希望將它們分成19個數據框,每個框有432行。我分配了以下功能:將數據幀拆分成相等部分
splitter <- function(x) {
a <- x[1:432,]
b <- x[433:864,]
c <- x[865:1296,]
d <- x[1297:1728,]
e<- x[1729:2160,]
f <- x[2161:2592,]
g <- x[2593:3024,]
h <- x[3025:3456,]
i <- x[3457:3888,]
j <- x[3889:4320,]
k <- x[4321:4752,]
l <- x[4753:5184,]
m <- x[5185:5616,]
n <- x[5617:6048,]
o <- x[6049:6480,]
p <- x[6481:6912,]
q <- x[6913:7344,]
r <- x[7345:7776,]
s <- x[7777:8208,]
assign(paste0('1',x), a, envir = globalenv())
assign(paste0('2',x), b, envir = globalenv())
assign(paste0('3',x), c, envir = globalenv())
assign(paste0('4',x), d, envir = globalenv())
assign(paste0('5',x), e, envir = globalenv())
assign(paste0('6',x), f, envir = globalenv())
assign(paste0('7',x), g, envir = globalenv())
assign(paste0('8',x), h, envir = globalenv())
assign(paste0('9',x), i, envir = globalenv())
assign(paste0('10',x), j, envir = globalenv())
assign(paste0('11',x), k, envir = globalenv())
assign(paste0('12',x), l, envir = globalenv())
assign(paste0('13',x), m, envir = globalenv())
assign(paste0('14',x), n, envir = globalenv())
assign(paste0('15',x), o, envir = globalenv())
assign(paste0('16',x), p, envir = globalenv())
assign(paste0('17',x), q, envir = globalenv())
assign(paste0('18',x), r, envir = globalenv())
assign(paste0('19',x), s, envir = globalenv())}
當我嘗試上的數據幀的代碼,我得到的錯誤消息:
錯誤assign中(paste0( 「1」,x)中,一個,ENVIR = globalenv()): 變量名稱被限制爲10000字節 另外:警告消息: In assign(paste0(「1」,x),a,envir = globalenv()): 只有第一個元素用作變量名稱
您可能會感興趣的是可以產生數據列表的'split'和'rep'組合.frames。閱讀gregor對[本文](http://stackoverflow.com/questions/17499013/how-do-i-make-a-list-of-data-frames)的回答可能會有所幫助,以獲取關於構建和工作的技巧與data.frames列表。 – lmo
x是一個data.frame,並且「paste0(1,x)產生一個data.frame因此是錯誤。你的意思是命名數據X1,X2,...等等。 – ab90hi