【发布时间】:2016-06-08 20:48:19
【问题描述】:
我有一个数据框 (df1),其中包含 200 多列数据(每列数千行)。列名由字母数字组成,并且彼此不同。
我有第二个数据集 (df2),其中有几列,其中第一列(名为“col1”)包含带有“值”的行,其中包含 df1 的列名。
但不是 df2 中的每一行我在 df1 中都有对应的列。
现在我想删除(删除)df2 中 df1 中没有“对应”列的所有行。
我使用诸如“从另一个 data.frame 中的值子集 data.frame”之类的关键字搜索了很长时间,但没有找到任何解决方案。我检查了,例如here、here或here等一些地方。
感谢您的帮助。
【问题讨论】:
-
你能创建一个可重现的小例子吗? See tips here - 使用内置数据,或模拟数据,或使用
dput()重复分享。 -
但也许你想要的是
df2[df2$col1 %in% names(df1), ]。df1是一个数据框似乎并不重要,唯一重要的是您有一个要保留的值的字符向量,而这恰好是names(df1)。 -
感谢@Gregor 和 Effel。你成功了!