R中固定源的置换?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R中固定源的置换?相关的知识,希望对你有一定的参考价值。

我有一个看起来像这样的数据集:

col1 | col2
a | b c d
e | f g h i j

我知道gtool的排列函数:

p <- (permutations(n=4,r=2,v=df),repeats.allowed=FALSE)

可以在有或没有重复的情况下提取不同的排列,但是我需要第1列留在原位,以便预期的结果是:

a b
a c
a d
e f
e g
e h
e i
e j

文档没有指定如何完成这样的事情。第二个向量是可变长度,我将使用str_extract_all将它们拉出来。

有没有人见过如何完成上述事情?预期结果是用于网络图形的边缘文件。

答案

你可以使用tidyr::separate_rows

library(tidyr)

df %>%
  separate_rows(col2, sep = " ")

  col1 col2
1    a    b
2    a    c
3    a    d
4    e    f
5    e    g
6    e    h
7    e    i
8    e    j

数据:

df <- read.table(text = "col1  col2
  a  'b c d'
  e  'f g h i j'",  header = TRUE, stringsAsFactors = FALSE)

以上是关于R中固定源的置换?的主要内容,如果未能解决你的问题,请参考以下文章

从基于源的索引转换为基于目标的索引

如何在 AWS CDK 中指定源安全组 ID?

Apache:限制对虚拟主机内特定源 IP 的访问

R 相当于在 Matlab 中置换数组维度 permute(A, dimorder)

ADO .Net - 如何在具有多个 IP 地址的系统上的 SqlConnection 中指定源 IP 地址

[置换 前缀和]牛牛的猜球游戏