從不等向量長度列表創(chuàng)建data.table

我希望從一個不相等的向量列表中創(chuàng)建一個data.table,但是我不想重復(fù)“較短”向量的值,而是希望它填充NAs。我有一個可能的解決方案,但它會重復(fù)值,并且不會根據(jù)需要保留NA。

Example:

library(data.table)
my_list <- list(A = 1:4, B = letters[1:5])  
as.data.table(do.call(cbind, my_list))

as.data.table(do.call(cbind, my_list))
   A B
1: 1 a
2: 2 b
3: 3 c
4: 4 d
5: 1 e

但我希望它看起來像:

as.data.table(do.call(cbind, my_list))
   A B
1: 1 a
2: 2 b
3: 3 c
4: 4 d
5: NA e

Thank you!

? 最佳回答:

我們需要使lengths相同,在list元素的末尾附加NA,該元素的length長度小于max長度

mx <- max(lengths(my_list))
as.data.table(do.call(cbind, lapply(my_list, `length<-`, mx)))

-output

      A B
1:    1 a
2:    2 b
3:    3 c
4:    4 d
5: <NA> e

cbind/as.data.tablecbind/as.data.table更緊湊

setDT(lapply(my_list, `length<-`, mx))[]
    A B
1:  1 a
2:  2 b
3:  3 c
4:  4 d
5: NA e
主站蜘蛛池模板: 日本国产一区二区三区在线观看| 亚洲AV综合色区无码一区| 骚片AV蜜桃精品一区| 99久久精品国产高清一区二区| 亚洲大尺度无码无码专线一区| 成人免费一区二区三区在线观看| 激情久久av一区av二区av三区| 国产一区在线播放| 亚洲一区精品伊人久久伊人| 亚洲高清偷拍一区二区三区| 亚洲AV午夜福利精品一区二区| 日韩一区二区超清视频| 八戒久久精品一区二区三区| 中文字幕aⅴ人妻一区二区| 亚洲一区二区三区久久| 国产一区二区精品久久岳√| 国产av成人一区二区三区| 曰韩人妻无码一区二区三区综合部| 亚洲AV日韩综合一区| 国产一区二区三精品久久久无广告| 久久精品视频一区| 日本精品啪啪一区二区三区| 国产一区二区精品尤物| 精品人妻少妇一区二区三区不卡| 亚洲国产成人久久一区WWW | 在线电影一区二区三区| 日韩a无吗一区二区三区| 国产一区在线电影| 无码一区二区三区老色鬼| 曰韩人妻无码一区二区三区综合部| 岛国精品一区免费视频在线观看 | 亚洲欧美国产国产一区二区三区| 台湾无码一区二区| 亚洲熟妇成人精品一区| 成人精品视频一区二区三区| 国产精品亚洲一区二区三区久久| 亚洲性无码一区二区三区 | 无码日本电影一区二区网站| 福利电影一区二区| 99久久无码一区人妻a黑| 日本一区午夜艳熟免费|