gpt4 book ai didi

r - do.call ("rbind", list(data, frames)) 但也按其原始数据框索引每一行

转载 作者:行者123 更新时间:2023-12-04 20:39:59 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Create a variable that identifies the original data.frame after rbind command in R

(6 个回答)


6年前关闭。



df1 <- data.frame(a = 1:2, b = 3:4)
df2 <- data.frame(a = 5:6, b = 7:8)

# A common method loses the origin of each row.
do.call("rbind", list(df1, df2))
## a b
## 1 1 3
## 2 2 4
## 3 5 7
## 4 6 8

# Whereas here, X1 records which data frame each row originated in.
library(plyr)
adply(list(df1, df2), 1)
## X1 a b
## 1 1 1 3
## 2 1 2 4
## 3 2 5 7
## 4 2 6 8

有没有其他方法可以做到这一点,也许更有效?

最佳答案

这是一种方法。

library(dplyr)
library(tidyr)

foo <- list(df1, df2)

unnest(foo, names) %>%
mutate(names = gsub("^X", "", names))

# names a b
#1 1 1 3
#2 1 2 4
#3 2 5 7
#4 2 6 8

关于r - do.call ("rbind", list(data, frames)) 但也按其原始数据框索引每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27954539/

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