Выделите конкретные гены в боксе - PullRequest
0 голосов
/ 17 октября 2018

У меня есть data.frame, который состоит из 200 генов (т.е. 200 строк) и 2 столбцов (т.е. обработанных и необработанных).Значения представляют собой уровни экспрессии генов в двух условиях.Я просто хотел бы построить коробочную диаграмму распределения двух состояний 200 генов, но выделив цветными точками только подмножество генов.Кроме того, я хотел бы поместить в график значение p (в данном случае я рассчитал его и составляет <0,001) сравнения двух условий.Кто-нибудь может мне помочь?</p>

 df
        Gene        Treated       Untreated   
         A           0.12           0.12  
         B           12.4           0.003   
         C           3.4            0.32   
         D           8.9            0.1   
         E           1.28           0.32   
         F          -4.95           1.54   
         G          -5.93           0.87  
         H           11.2           0.76   
         I           9.8            1.06       

Предположим, для выделения генов: C, F, G, I

Заранее спасибо

Best

1 Ответ

0 голосов
/ 17 октября 2018

Я дам вам ggplot2 ответ.Для этого вам нужно изменить свои данные, чтобы были отдельные переменные x и y.Прямо сейчас ваши значения y разделены между двумя столбцами.

Затем мы выделим определенные гены, только нанося точки на график для подмножества.

library(ggplot2)
library(dplyr)
library(tidyr)

gene_list <- c('C', 'F', 'G', 'I')
df_long <- gather(df, treatment, expression, -Gene)

ggplot(df_long, aes(treatment, expression)) +
  geom_boxplot() +
  geom_point(aes(color = Gene), filter(df_long, Gene %in% gene_list), size = 3) + 
  theme_minimal() +
  labs(caption = 'p < 0.001')

enter image description here

Для конкретных настроек, пожалуйста, посмотрите на многие ggplot2 вопросы здесь, на SO.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...