组合两个列表中的多个配对数据帧 [英] Combine multiple paired data frames from two lists
本文介绍了组合两个列表中的多个配对数据帧的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
'pylr'
,但似乎不起作用。 数据帧的长度与以下相同:
> summary(ww)
长度类模式
WFGC01 19 data.frame list
WFGC02 19 data.frame list
WFGC03 19 data.frame list
WFGC05 19 data.frame列表
WFGC09 19 data.frame list
WFGC10 19 data.frame list
WFGC13 19 data.frame list
WFGC15 19 data.frame list
WFGC17 19 data.frame列表
WFGC18 19 data.frame list
WFGC19 19 data.frame list
WFGC20 19 data.frame list
WFGC21 19 data.frame list
WFGC22 19 data.frame列表
和
code>>总结(dd03)
长度类模式
WFGC02 19 data.frame list
WFGC03 19 data.frame list
WFGC05 19 data.frame list
WFGC07 19 data.frame列表
WFGC10 19 data.frame list
WFGC13 19 data.frame list
WFGC17 19 data.frame list
WFGC18 19 data.frame list
WFGC22 19 data.frame列表
WFGC24 19 data.frame list
解决方案
鉴于您的问题的解释,以下可能有效:
#获取所有重叠名称
bindNames< - intersect (name(ww),names(dd03))
#获取一个rbinded数据的框架,保持独特的观察
newList< - lapply(bindNames,function(i)unique(rbind(ww [ [i]],dd03 [[i]])))
将所有的数据框架附加到一个数据框架中,您可以再次使用 lapply
。
newDataFrame& lt; - as.data.frame(lapply(newList,rbind))
I want comebine data frames from two lists with the same name, and delete all repeated rows in each data frame after binding. I have tried the package 'pylr'
, but it doesn't seem work.
The data frames all have the same length as follows:
> summary(ww)
Length Class Mode
WFGC01 19 data.frame list
WFGC02 19 data.frame list
WFGC03 19 data.frame list
WFGC05 19 data.frame list
WFGC09 19 data.frame list
WFGC10 19 data.frame list
WFGC13 19 data.frame list
WFGC15 19 data.frame list
WFGC17 19 data.frame list
WFGC18 19 data.frame list
WFGC19 19 data.frame list
WFGC20 19 data.frame list
WFGC21 19 data.frame list
WFGC22 19 data.frame list
and
> summary(dd03)
Length Class Mode
WFGC02 19 data.frame list
WFGC03 19 data.frame list
WFGC05 19 data.frame list
WFGC07 19 data.frame list
WFGC10 19 data.frame list
WFGC13 19 data.frame list
WFGC17 19 data.frame list
WFGC18 19 data.frame list
WFGC22 19 data.frame list
WFGC24 19 data.frame list
解决方案
Given the explanation of your problem, the following may work:
# get all overlapping names
bindNames <- intersect(names(ww), names(dd03))
# get a list of rbinded data.frames, keeping unique observations
newList <- lapply(bindNames, function(i) unique(rbind(ww[[i]], dd03[[i]])))
If at this point, you want to append all of your data.frames into a single data.frame, you can once again use lapply
.
newDataFrame <- as.data.frame(lapply(newList, rbind))
这篇关于组合两个列表中的多个配对数据帧的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文