Элементы левого столбца «полностью связаны» с элементами правого столбца в R - PullRequest
0 голосов
/ 13 апреля 2020

Я пытаюсь реализовать конкретную c графовую сеть, в которой все элементы правого столбца должны быть связаны со всеми элементами левого столбца, не будучи связанными между собой.

Предположим, что таблица выглядит следующим образом:

table=data.frame(matrix(c("A","B","A","C","B","D","1","2","3","1","4","2"),ncol=2))
colnames(table)=c("gene","enhancer")

print(table)

#gene enhancer
#1    A        1
#2    B        2
#3    A        3
#4    C        1
#5    B        4
#6    D        2

Здесь я хочу такие сети, как (A - 1, C - 1), (B - 2, D-- 2), (A - 3) и (B - 4).

Если я использую пакет напрямую, у меня есть сети с косвенными краями, и я не хочу этого.
По сути, я хочу иметь подграф большего графа, в котором все гены связаны со всеми энхансерами.

Мне уже удалось создать нужные сети для связи один-один, но я не могу создать ее для более сложные отношения.

Я пытался использовать функции с group_split и group_keys для извлечения связанных элементов друг из друга. Я также использовал функцию aggregate .
Я не могу этого сделать, возможно, я слишком обдумал свою проблему, но она не кажется действительно тривиальной.

Как мне этого добиться?

...