我使用R API向数据供应商收到一个数据框的命名列表。以下是我将如何构建一个类似的结构。R将列表对象的名称传递给列出对象自己
spec1 <- data.frame(speed = 100, wt = 5, price = 10)
spec2 <- data.frame(speed = 1000, wt = 1, price = 100)
spec3 <- data.frame(speed = 1, wt = 50, price = 5)
mylist <- list(car = spec1,exotic = spec2, truck = spec3)
我的目标是成为像下面扁平的数据帧,这样我可以将其导出到一个SQL数据库。
car_type speed wt price
-------- ------ ---- -----
car 100 5 10
exotic 1000 1 100
truck 1 50 5
我的问题是,“car_type”标识符存储在列表中的数据帧的名字,我不知道如何将它传递给复读功能来填充表。
比如我使用以下方法来获取从项目的名称car_type列表
car_type <- sapply(seq_along(mylist), function(x) names(mylist)[x])
然后我用下面的重复一个car_type(由“X”代替)在底层表,然后追加。
category <- lapply(mylist, function(y) rep("X" ,dim(y)[1]))
mylist <- lapply(seq_along(mylist), function(x)
不过,我似乎无法管理到car_type中发现的名字传回在我的数据集创建一个新的类别栏,当它被夷为平地,这将持续存在。
LOL。太棒了,太容易了。花了这么多小时试图弄清楚这一点。非常感谢@ friep – Luongjames