0

我在 id1 和 id2 列中有以下数据集对,它们都与 id 313 相关。我是 R 新手,并试图找到一个可以将所有这些数字链接到 id 313 的解决方案。我尝试使用 sqldf 连接但不转非常有效。

id1<- c(313, 313, 313, 313, 313, 314, 314, 314, 314, 315, 317, 317, 317, 318, 318, 319)
id2<-c(314, 315, 316, 319, 320, 315, 316, 319, 320, 316, 318, 319, 320, 319, 320, 320)

df<-cbind.data.frame (id1, id2)

所需的输出看起来像这样。

id1   id2 id3 id4 id5 id6 id7 id8
313   314 315 316 317 318 319 320

所以基本上这个想法是将它们组合在一行中,因此它被视为一个id。非常感谢任何可以将它们联系在一起的建议。

4

1 回答 1

0

尝试这个:

library(dplyr)
library(tidyr)

tibble(
  x1 = c(df$id1, df$id2) %>% unique()
) %>% 
  mutate(
    x2 = paste0("id", row_number())
  ) %>% 
  pivot_wider(names_from = x2, values_from = x1)
于 2020-12-02T00:16:59.353 回答