【发布时间】:2021-10-22 05:54:29
【问题描述】:
我有两个由字符串组成的不同数据框(数千行)。它们每个都有不同数量的条目。我正在尝试找到一个代码,允许我将 df2 中“特征”列的内容关联到 df1(参见下面的示例):
Df1:
| ID | Information |
|---|---|
| 11AA | info1 |
| 22BB | info2 |
| 33CC | info3 |
| 44DD | info4 |
| 11AA | info1 |
| 22BB | info2 |
Df2:
| ID | Characteristic |
|---|---|
| 11AA | char1 |
| 22BB | char2 |
| 33CC | char3 |
| 44DD | char4 |
预期的结果是:
Df3:
| ID | Information | Characteristic |
|---|---|---|
| 11AA | info1 | char1 |
| 22BB | info2 | char2 |
| 33CC | info3 | char3 |
| 44DD | info4 | char4 |
| 11AA | info1 | char1 |
| 22BB | info2 | char2 |
我尝试使用 inner_join(df1,df2, by="ID") 但生成的数据帧 (df3) 通常比原始数据帧 (df1) 包含更多行,我需要生成的数据帧 (df3) 保持与原始数据帧 (df3) 相同的结构原来的(df1),我只需要添加额外的列。
这种操作有内置函数吗?
【问题讨论】:
-
更多行的存在表明您在任一输入帧中都有重复的
ID。您的示例数据不会发生这种情况,因此您不会得到它。如果您想删除重复项,您需要(向我们和 R)提供一些关于如何做到这一点的逻辑,没有一般的方法可以始终做到这一点。
标签: r dataframe inner-join