【发布时间】:2022-01-08 05:08:59
【问题描述】:
我有 n 个代表每周时间段的数据框。我想做一些类似内部连接的事情(基于 id 和 id2),但用于附加来自所有 n 个数据集的行,而不是附加列(因为它们都是相同的)。
他们都是这样的
DF1:
id id2 A B C PERIOD
1 50 0.1 0.2 0.3 1
1 100 0.1 0.2 0.3 1
2 2 0.1 0.2 0.3 1
DF2:
id id2 A B C PERIOD
1 50 0.5 0.7 0.9 2
1 100 0.6 0.8 0.9 2
1 105 0.1 0.2 0.3 2
2 2 0.3 0.4 0.5 2
2 3 0.1 0.2 0.3 2
...重复DFn
我想要一个像这样的数据框
id id2 A B C PERIOD
1 50 0.1 0.2 0.3 1
1 50 0.5 0.7 0.9 2
... n
1 100 0.1 0.2 0.3 1
1 100 0.6 0.8 0.9 2
... n
2 2 0.1 0.2 0.3 1
2 2 0.3 0.4 0.5 2
... n
因此它会丢弃所有未出现在我的所有 n 个数据集中的 id、id2 组合。 有没有快速的方法?
我正在考虑首先遍历所有 n 个数据帧,抓取 id、id2 对的集合,然后对所有这些集合进行交集,然后将数据帧减少 .isin,然后在减少的数据帧列表。不过这似乎很乏味。
【问题讨论】:
-
我可以在 tidyverse 或 pandas 中做到这一点,这并不重要
-
我建议 concat all 然后stackoverflow.com/questions/49735683/…。使用 id, id2 进行分组并将计数条件设置为 n
-
聪明!我忘了我可以清理重复项以确保不同的 n 行来自 n 个数据帧。谢谢