Igor Filippov:
Mis datos se ve así:
counts <- data.frame(
pos = c(101, 101, 101, 102, 102, 102, 103, 103, 103, 101, 101, 101),
chr = c(1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4),
subj = c("A", "B", "C", "A", "B", "C", "A", "B", "C", "A", "B", "C")
)
pos
se supone que debe pertenecer sólo a un único chr
, pero aquí POS 101 pertenece a los dos CHR 1 y 4.
Puedo detectar este caso como:
counts %>% select(pos, chr) %>%
group_by(pos) %>%
summarise(n_chrs = length(unique(chr))) %>%
filter(n_chrs > 1)
Esto devuelve pos
los cuales tiene más que chr
valores:
A tibble: 1 x 2
pos n_chrs
<dbl> <int>
1 101 2
Lo que me gustaría es saber qué chr
valores están implicados, algo así como:
pos chr
1 101 1
2 101 4
¡Gracias!
arg0naut91:
Podrías hacerlo:
library(dplyr)
counts %>%
group_by(pos) %>%
distinct(chr) %>%
filter(n() > 1)
Salida:
# A tibble: 2 x 2
# Groups: pos [1]
pos chr
<dbl> <dbl>
1 101 1
2 101 4