[英]list names as vector in list
從以下列表中獲取最快的方法是什么:
set.seed(1)
mylist <- list(1:2,1:3,1:4)
names(mylist) <- sample(LETTERS,3)
mylist
$J
[1] 1 2
$V
[1] 1 2 3
$Z
[1] 1 2 3 4
到帶有包含列表名稱的額外向量的列表,即
mylist
$J
[1] 1 2
[2] J J
$V
[1] 1 2 3
[2] V V V
$Z
[1] 1 2 3 4
[2] Z Z Z Z
結果可能同樣是數據幀列表。 某種
lapply(mylist, function(x) { data.frame(x=x,y=names(x)})
另外一個選項:
df<-stack(mylist)
split(df, df$ind)
也許stack(mylist)
才是您真正需要的嗎?
就個人而言,我喜歡@Matthew Plourde對stack
的使用
這是使用mapply
的選項,可保留原始列表的相同結構
mapply(function(L, N)
{names(L) <- rep(N, length(L)); L}, mylist, names(mylist))
$G
G G
1 2
$J
J J J
1 2 3
$N
N N N N
1 2 3 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.