【发布时间】:2022-01-26 21:49:38
【问题描述】:
我想根据另一列中的行值识别一列中唯一的行值集,以最终在数据框中创建一个新列。下图说明了我的问题和预期结果(即expected_outcome 列)。
例如:
-
前 3 行在
trial列中具有值T1,在group列中具有值D1, D2, D3。 -
接下来的 3 行在
trial列中具有值T3,在group列中具有值D3, D2, D1。
因为集合 D1, D2, D3 与 D3, D2, D1 具有相同的包含,我希望所有 6 行在列 expected_outcome 中具有相同的值。
我的数据远比这复杂。我可能必须对超过 2 列进行分组。所以,我更喜欢这个问题的通用解决方案。下面是图中的数据。
test_data <- data.frame(
trial = c("T1", "T1", "T1", "T3", "T3", "T3", "T5", "T5", "T6", "T6", "T6"),
group = c("D1", "D2", "D3", "D3", "D2", "D1", "D1", "D3", "D1", "D3", "D2")
)
【问题讨论】:
-
那么当两个试验包含完全相同的组时,
expected_outcome是否相同? -
T6 也有 D1 D3 D2?
-
是的@tavdp!但我也需要分组来考虑组列中的行值序列。
-
@TarJae,这是正确的!最后一行应该是 T7 而不是 T6。我更新了图片。