簡體   English   中英

R中的數據幀列表:賦值問題

[英]list of dataframes in R: assignment problem

我有以下代碼:

child_tracks <- list()
   for(i in 1:106)
   {
     for(j in 1:5)
     {
     child_tracks[[i]][[j]] <- 
all_samples[[i]][sample(nrow(all_samples[[i]]),length_breakups[[i]][[j]]),]

     }
   }

如上所述,“all_samples”是數據幀列表,而“length_breakups”是列表列表。

當我為它分配計算時,它會拋出一個錯誤:下標越界。 雖然單個變量可以容納,但列表不能。 例如:

temp <- 
all_samples[[i]][sample(nrow(all_samples[[i]]),length_breakups[[i]][[j]]),]

child_tracks[[i]][[j]] <- 
all_samples[[i]][sample(nrow(all_samples[[i]]),length_breakups[[i]][[j]]),]

前者是作品,后者則不是。 我已經看到類定義都沒問題,“for”循環的范圍也是如此。

只是沒有繞過它。 任何意見?

初始化列表的大小:

child_tracks <- array(list(), c(106,5))
   for(i in 1:106)
   {
     for(j in 1:5)
     {
     child_tracks[[i]][[j]] <- 
all_samples[[i]][sample(nrow(all_samples[[i]]),length_breakups[[i]][[j]]),]

     }
   }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM