Remover duas permutações de colunas duplicadas

Não consigo encontrar um bom título para esta pergunta, então sinta-se à vontade para editá-lo, por favor.

Eu tenho esse data.frame

  section time to from
1       a    9  1    2
2       a    9  2    1
3       a   12  2    3
4       a   12  2    4
5       a   12  3    2
6       a   12  3    4
7       a   12  4    2
8       a   12  4    3

Eu quero remover linhas duplicadas que têm o mesmoto efrom simultaneamente, sem computar as permutações das 2 colunas: por exemplo, (1,2) e (2,1) são duplicados.

Então, o resultado final seria:

  section time to from
1       a    9  1    2
3       a   12  2    3
4       a   12  2    4
6       a   12  3    4

Eu tenho uma solução construindo uma nova chave de coluna, por exemplo

  key <- paste(min(to,from),max(to,from))

e remova a chave duplicada usandoduplicated, mas eu acho que isso é solução suja.

aqui o dput dos meus dados

structure(list(section = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L), .Label = "a", class = "factor"), time = c(9L, 9L, 12L, 
12L, 12L, 12L, 12L, 12L), to = c(1L, 2L, 2L, 2L, 3L, 3L, 4L, 
4L), from = c(2L, 1L, 3L, 4L, 2L, 4L, 2L, 3L)), .Names = c("section", 
"time", "to", "from"), row.names = c(NA, -8L), class = "data.frame")

questionAnswers(2)

yourAnswerToTheQuestion