我有两个数据框。两者中的行名都是日期。我想要做的是,我想在两个数据框中选择所有常见的行(具有相同的日期)并创建一个只有这些常见行的新数据框。
当然,各个列会彼此相邻。
有人可以帮忙吗??
尝试:
merge(df1, df2, by="row.names")
?merge
也可以使用 by=0 代替 'row.names'。顺便说一句,rownames 不是 R Date 类,而是字符值。我想也可以这样做:
cbind( df1[ intersect(rownames(df1), rownames(df2)), ] ,
df2[ intersect(rownames(df1), rownames(df2)), ] )
根据 BondedDust 的回答,如果您使用他的建议的第一行,您可以获得所需的数据,因为您将使用函数“intersect”定义数据的交集,使用运算符('['和']') 并使用 'cbind' 函数按列绑定数据。
cbind( df1[ intersect(rownames(df1), rownames(df2)), ])