Size: a a a

R (язык программирования)

2021 April 09

ДВ

Дмитрий Володин... in R (язык программирования)
Кажется вот так должно точно сработать
источник

К

Кирилл in R (язык программирования)
а можно пояснить filter(length(unique(predLargeSeg)) != 1
источник

ДВ

Дмитрий Володин... in R (язык программирования)
самое главное забыл!))
df %>% group_by(gene) %>% filter(length(unique(predLargeSeg)) != 1 & min(predLargeSeg) != 2) %>% ungroup()
источник

ДВ

Дмитрий Володин... in R (язык программирования)
Смотрите, мы по каждой группе (гену) смотрим количчество уникальных значений в predLargeSeq
И в итоге отбираем только те гены, у которых количество уникальных больше 1 и при этом не равно 2
источник

ДВ

Дмитрий Володин... in R (язык программирования)
Хотя не
источник

ДВ

Дмитрий Володин... in R (язык программирования)
я ошибся(
источник

К

Кирилл in R (язык программирования)
)))))
источник

ДВ

Дмитрий Володин... in R (язык программирования)
во! df %>% group_by(gene) %>% filter(! (length(unique(predLargeSeg)) == 1 & min(predLargeSeg) == 2))
источник

ДВ

Дмитрий Володин... in R (язык программирования)
Тут мы действуем прямо явно. Исключаем те гены, у которых есть только одно уникальное значение проверочной величины и это значение равно 2))
источник

ДВ

Дмитрий Володин... in R (язык программирования)
для этого ставим отрицание (!) перед условием одно уникальное значение и оно равно 2
источник

a

aGricolaMZ in R (язык программирования)
Я бы тогда делал так:

tibble(gene = c("a", "a", "b", "b", "b", "c"),
            value = c(2, 3, 3, 4, 5, 2)) %>%
 group_by(gene) %>%
 filter(sum(value != 2) > 0)
источник

К

Кирилл in R (язык программирования)
пасяб, ща будем пробовать)
источник

ДВ

Дмитрий Володин... in R (язык программирования)
во, так круче, да)
источник

К

Кирилл in R (язык программирования)
забавно, @@volodin_dd @aGricolaMZ,
Код
tibble(gene = c("a", "a", "b", "b", "b", "c"),
            value = c(2, 3, 3, 4, 5, 2)) %>%
 group_by(gene) %>%
 filter(sum(value != 2) > 0)
выдает ошибку:
Error: Problem with filter() input ..1.
x object 'value' not found
ℹ️ Input ..1 is sum(value != 2) > 0.
ℹ️ The error occurred in group 1: gene = "ABL1".

Тогда как
df %>% group_by(gene) %>% filter(! (length(unique(predLargeSeg)) == 1 & min(predLargeSeg) == 2)) все сделал ровно
источник

ДВ

Дмитрий Володин... in R (язык программирования)
Переименуйте переменную в первом варианте))
источник

ДВ

Дмитрий Володин... in R (язык программирования)
Вам трассировщик на это явно указал
источник

К

Кирилл in R (язык программирования)
бл*
источник

ДВ

Дмитрий Володин... in R (язык программирования)
с value на нужную вам
источник

К

Кирилл in R (язык программирования)
сорян
источник

К

Кирилл in R (язык программирования)
заработался совсем уже
источник