我有一个使用GET
方法(API调用)生成的数据集。
dataset<-GET('www.ttttyyyyzzzz.com')
contents <- content(dataset)
我通过使用以下命令提取数据
contents<-contents$response$data
。这将创建一个列表。清单清单清单。
就将其视为数据框而言,我有8行42列。我真正想做的是创建一个名为“ Year”的第43列,并将其添加到8个高级元素的每一个中。 因此,对于我所有的8个元素,该列表现在都是“ 43个列表”。
@Ronak要求发送dput-为了进行此练习,我创建了一个模型。使用以下命令,我想在我的主列表中添加一个名为'p'的第4个元素,所有列表的通用值都为25。
structure(list(m = 1, n = 2, o = 3, structure(list(m = 3, n = 4,
o = 5), .Names = c("m", "n", "o")), structure(list(m = 6,
n = 9, o = 8), .Names = c("m", "n", "o"))), .Names = c("m",
"n", "o", "", ""))
答案 0 :(得分:3)
如果我的目标很好,我们可以使用:
plyr::llply(contents,function(x) rlist::list.append(x,p=25))
答案 1 :(得分:2)
因此我们可以通过
添加一个命名列表元素lapply(lst, function(x) c(x, p = 25))
#$m
# p
# 1 25
#$n
# p
# 2 25
#$o
# p
# 3 25
#[[4]]
#[[4]]$m
#[1] 3
#[[4]]$n
#[1] 4
#[[4]]$o
#[1] 5
#[[4]]$p
#[1] 25
#...
#...
或与purrr::map
purrr::map(lst, ~ c(., p = 25))
数据
lst <- structure(list(m = 1, n = 2, o = 3, structure(list(m = 3, n = 4, o =
5), .Names = c("m", "n", "o")), structure(list(m = 6, n = 9, o = 8), .Names =
c("m", "n", "o"))), .Names = c("m", "n", "o", "", ""))
答案 2 :(得分:1)
这里是base R
Map(c, lst1, p = 25)
#$m
# p
# 1 25
#$n
# p
# 2 25
#$o
# p
# 3 25
#[[4]]
#[[4]]$m
#[1] 3
#[[4]]$n
#[1] 4
#[[4]]$o
#[1] 5
#[[4]]$p
#[1] 25
#...
lst1 <- structure(list(m = 1, n = 2, o = 3, structure(list(m = 3, n = 4, o =
5), .Names = c("m", "n", "o")), structure(list(m = 6, n = 9, o = 8), .Names =
c("m", "n", "o"))), .Names = c("m", "n", "o", "", ""))