Voila j'ai deux tableaux qui se presente sous ce format:
Tableau1:
Start End
1 1185001 1186000
2 1199001 1200000
3 1537001 1538000
4 1610001 1611000
5 1611001 1612000
6 1732001 1733000
7 1969001 1970000
.. ... ...
Tableau 2:
Genes FB_Genes Start End
1 CG11023 FBgn0031208 7529 9484
2 l(2)gl FBgn0002121 9839 21376
3 CG12567 FBgn0039958 19633 32995
4 Ir21a FBgn0031209 21823 25155
5 CR43609 FBgn0263584 21952 24237
.. .... .... ... ....
Je voudrais recuperer une liste des Genes du Tableau 2 qui ont une region en commun avec la liste du tableau 1.
Par exemple, si j'ai un une region (tableau 1) qui va de 1200 (Start) a 2200 (End), je voudrais recuperer la liste des genes qui contiennent cette region comme par exemple un gene allant de 1500 (start) a 2600 (End).
J'espere que c'est assez claire.
Voila le script que j'ai fait, mais je pense que mon if est faux et je dois sans doute avoir d'autres erreurs:
Code : Tout sélectionner
# read in the data
Table_2L<-read.table("D:/PhD/ListeGenes/Genes_2L.csv", sep=",", header=TRUE)
Table_95_2L<-read.table("D:/PhD/ListeGenes/Regions_95_2L.csv", sep=",", header=TRUE)
Start95 <- Table_95_2L$Start
End95 <- Table_95_2L$End
Start <- Table_2L$Start
End <- Table_2L$End
Genes <- Table_2L$Genes
For (Start & End){
if (Start95 > Start & End95 < End)
{
wtite.csv(Genes, file="ListeGenes")
}
}
Quelqu'un aurait-il une amelioration de ce script a me proposer?
Ou une autre idee pour avoir ma liste.
Merci d'avance,
Myriam