Rbind:将源名称添加为新组合数据集中的列 and/or 变量
Rbind: Add name of source as column and/or variable in the new combined dataset
我正在使用 Rbind 将多个数据集合并到一个大数据框中。
为了将来参考,我希望能够查看某行来自哪个数据集。
有没有不使用 ID 或其他 'hacks' 的简单方法来做到这一点?
源文件示例:
Sales_East <- (read.csv('salesEast.csv')
Sales_West<- (read.csv('salesWest.csv')
Dataset <- rbind.fill(Sales_East,Sales_West)
生成的数据集:
ID Order Amount
1 2 10
2 1 5
A 4 20
B 2 10
但我正在寻找更像这样的东西:
ID Order Amount Source
1 2 10 East
2 1 5 East
A 4 20 West
B 2 10 West
如果您只想行绑定几个数据框,只需自己添加源即可:
Sales_East <- read.csv('salesEast.csv')
Sales_East$Source <- "East"
Sales_West <- read.csv('salesWest.csv')
Sales_West$Source <- "West"
Dataset <- rbind.fill(Sales_East, Sales_West)
如果你有一大堆数据框,你需要通过自己编写或使用 ls()
在字符向量中获取它们的名称。但是一旦你拥有它,你就可以这样做:
dfnames <- c("Sales_East", "Sales_West")
do.call(rbind, lapply(dfnames, function(x) cbind(get(x), Source=x)))
我正在使用 Rbind 将多个数据集合并到一个大数据框中。
为了将来参考,我希望能够查看某行来自哪个数据集。
有没有不使用 ID 或其他 'hacks' 的简单方法来做到这一点?
源文件示例:
Sales_East <- (read.csv('salesEast.csv')
Sales_West<- (read.csv('salesWest.csv')
Dataset <- rbind.fill(Sales_East,Sales_West)
生成的数据集:
ID Order Amount
1 2 10
2 1 5
A 4 20
B 2 10
但我正在寻找更像这样的东西:
ID Order Amount Source
1 2 10 East
2 1 5 East
A 4 20 West
B 2 10 West
如果您只想行绑定几个数据框,只需自己添加源即可:
Sales_East <- read.csv('salesEast.csv')
Sales_East$Source <- "East"
Sales_West <- read.csv('salesWest.csv')
Sales_West$Source <- "West"
Dataset <- rbind.fill(Sales_East, Sales_West)
如果你有一大堆数据框,你需要通过自己编写或使用 ls()
在字符向量中获取它们的名称。但是一旦你拥有它,你就可以这样做:
dfnames <- c("Sales_East", "Sales_West")
do.call(rbind, lapply(dfnames, function(x) cbind(get(x), Source=x)))