gpt4 book ai didi

r - 如何使用 lapply 创建变量?

转载 作者:行者123 更新时间:2023-12-02 01:47:30 26 4
gpt4 key购买 nike

列表中有很多子数据集,因此列出每个数据集会很麻烦且非常乏味。有没有办法使用lapplypurrr来实现这一点?提前致谢。

library(dplyr)
mydata <- list(data.frame(
A = c(1, 2, 3),
B = c("Test1", "Test2", "Test3")),
data.frame(
A = c(10, 21, 30),
B = c("Test10", "Test24", "Test32")))

names(mydata) <- c("dat1", "dat2")


mydata$dat1 <- mydata$dat1 %>%
mutate(id = "dat1")

mydata$dat2 <- mydata$dat2 %>%
mutate(id = "dat2")

最佳答案

这应该可以解决问题:

listNames <- c("dat1", "dat2")
names(mydata) <- listNames
mydata <- lapply(
listNames,
function(x) {
mydata[[x]] %>% mutate(id = x)
}
)
names(mydata) <- listNames
mydata
$dat1
A B id
1 1 Test1 dat1
2 2 Test2 dat1
3 3 Test3 dat1

$dat2
A B id
1 10 Test10 dat2
2 21 Test24 dat2
3 30 Test32 dat2

关于r - 如何使用 lapply 创建变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70753168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com