Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1641 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [JAVA] récupérer efficacement des sequences dans un fichier texte

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JAVA] récupérer efficacement des sequences dans un fichier texte

n°624389
roievil
Taking Fire, Need Assistance..
Posté le 28-01-2004 à 23:43:55  profilanswer
 

Dites moi si j'abuse de faire mes classes sur ce forum...  
 
Ma question est la suivante j'ai, pour ceux qui suivent, une liste de lignes dans un fichier texte de ce type :  
 
L2B0200_B02_DLS132_015.ab1  
L2B0203_F12_DLS133_044.ab1  
L2B0202_M02_DLS134_003.ab1  
L2B0204_M15_DLS146_052.ab1  
L2B0204_P24_DLS146_082.ab1  
L2B0200_J17_DLS132_071.ab1  
L2B0200_N11_DLS132_036.ab1
.
.
.
WEF031_B03_July102_034.ab1    
 
ces lignes correspondent a des titre de séquences  
 
je dois récupérer ces séquence dasn une base de données représentée par un fichier texte  :
 
>WEF031_B03_July1602_034.ab1-MLU=106-2err-162net3-16net3-4net3
TCAAGCCAGCGGCACTCACACTACACTCATCCACTCACAAGCTAATCTAG
CGGCGTAGCTCACTTCAGTCCAGTCGGCATGGCGGCTCCGAGGGGCGCGG
CACTGGTGCTGGCGATGGTGCTCGCGGCGATGCTGGTGGCGCCGCCGGCG
ACGGTGCACGCCATATCCTGCTCCACGGTGTACAGCACGCTGATGCCGTG
CCTGCAGTACGTGCAGCAGGGCGGGTCGCCGGCCCGGGGCTGCTGCACCG
GCATCCAGAACCTGCTGGCCGAGGCCAACAACAGCCCCGACCGCCGCACC
ATCTGCGGCTGCCTGAAgaACGTCGCCAACGGCGCCTCCGGCGGGCCCTA
CATCACCCGCGCCGCCGCGCTCCCCTCCAAGTGCAACGTCGCCCTCCCCT
ACaaGATCAGCCCCAGCGTCGACTGCAACTCGATCCACTGAACGAACTGA
aGCGcCcTGGCCCGtgTGTCTGTCGACGTACGTCTGCCgtgtgaggagTc
cCATGTCTgGagaataaattGCTGCTACTA
>WEF031_B01_July1602_002.ab1-MLU=106-2err-polyA=27-0err-646net5-49net5
 
>WEF031_B02_July1602_018.ab1-polyA=475-0err-polyT=392-0err-18net5-49net5
.
.
.
 
pour obtenir un fichier texte du même type mais ne contenant que les séquences de la liste dont je parle au debut
 
Je possede un iterateur de ma base de donnee mais l'algorithme simple consistant a passer a travers de la base de donnee a chaque ligne de ma liste me parait peu efficace...
 
merci

mood
Publicité
Posté le 28-01-2004 à 23:43:55  profilanswer
 

n°624391
Jubijub
Parce que je le VD bien
Posté le 28-01-2004 à 23:48:15  profilanswer
 

c de la génétique non ?


---------------
Jubi Photos : Flickr - 500px
n°624393
benou
Posté le 28-01-2004 à 23:50:08  profilanswer
 

Jubijub a écrit :

c de la génétique non ?


ca y ressemble ...


---------------
ma vie, mon oeuvre - HomePlayer
n°624394
benou
Posté le 28-01-2004 à 23:51:21  profilanswer
 

pkoi tu fais pas le contraire : A chaque itération tu vérifies si c'est une des lignes de ton fichier texte. Si oui tu gardes la séquence sinon tu passes au suivant ...


---------------
ma vie, mon oeuvre - HomePlayer
n°624395
Jubijub
Parce que je le VD bien
Posté le 28-01-2004 à 23:51:59  profilanswer
 

c surement hyper con ce que je v demander, mais t'aurais pas intéret à mettre des résultats dans des champs d'un vrai SGBDR, et d'utiliser ses fonctions pour faire tes tris ?
 
Parce que ca fait 2 topics que tu demandes comment faire en java des choses qu'on peut faire hyper facilement en base de données...


---------------
Jubi Photos : Flickr - 500px
n°624396
roievil
Taking Fire, Need Assistance..
Posté le 28-01-2004 à 23:54:31  profilanswer
 

Je suis 'bioinformaticien' j'ai fait une maitrise de bio en france et un dess de bioinformatique au quebec et la je trvaille dans un labo de génétique de l'UQAM a montreal donc j'ai juste un an de cours de progs...
 
pas con le benou, c pour ca que je vous paie pour les idées
merci

n°624399
roievil
Taking Fire, Need Assistance..
Posté le 28-01-2004 à 23:57:55  profilanswer
 

non Jubijub c pas con mais comme je l'ai un peu dit en haut je ne suis pas pro alors les bases de données, les vraies c pas mon fort. Et puis on travaille pour l'instant sur des fichiers textes : les bases de données de séquences ne sont pas encore au point parce que c en partie moi qui m'en occuppe ;-)

n°624401
roievil
Taking Fire, Need Assistance..
Posté le 28-01-2004 à 23:58:29  profilanswer
 

c quoi SGBDR?

n°624403
Taz
bisounours-codeur
Posté le 29-01-2004 à 00:00:24  profilanswer
 

faut faire du Perl :o

n°624405
benou
Posté le 29-01-2004 à 00:00:54  profilanswer
 

roievil a écrit :

c quoi SGBDR?


Système de gestion de base de données relationnelles


---------------
ma vie, mon oeuvre - HomePlayer
mood
Publicité
Posté le 29-01-2004 à 00:00:54  profilanswer
 

n°624408
benou
Posté le 29-01-2004 à 00:02:38  profilanswer
 

roievil a écrit :

non Jubijub c pas con mais comme je l'ai un peu dit en haut je ne suis pas pro alors les bases de données, les vraies c pas mon fort. Et puis on travaille pour l'instant sur des fichiers textes : les bases de données de séquences ne sont pas encore au point parce que c en partie moi qui m'en occuppe ;-)


C'est sur que metterais tout en base de données ce serait quand même plus simple à traiter que des bêtes fichiers texte.
 
C'est quoi que ce dess qui t'apprend pas à faire de la base de données ??? c'est un truc carément essantiel pour la bioinfo ! [:w3c compliant]


---------------
ma vie, mon oeuvre - HomePlayer
n°624409
roievil
Taking Fire, Need Assistance..
Posté le 29-01-2004 à 00:04:04  profilanswer
 

excusez moi pour cette derniere quesiton tres paresseuse j'ai checké sur internet
 
et aussi pour ne aps avoir pensé a l'idée de benou j'Ai un peu honte, j'y retourne

n°624417
roievil
Taking Fire, Need Assistance..
Posté le 29-01-2004 à 00:06:25  profilanswer
 

j'ai eu un seul cours de BD et le prof etait extremement mauvais mais je suis pas si clueless que ca.
 
Il ya aussi le fait que c'est un petit programme que je dois faire et je ne voulais pas me lancer dans le trouble de la base de données...

n°624418
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:08:30  profilanswer
 

Système de gestion de base de données relationnel
 
-->Oracle, PostGRESQL, MySQL, SQL server, Firebird, autre....
 
Relationnelles parce que c basée sur l'algèbre relationnelles
 
L'idée en très simplifié
T'a un tableau :  
les colonnes c les attributs (dans ton cas ca pourrait etre nom de la séquence, séquence en elle même, date de génération, date d'indexation , et d'autres...
 
Les lignes, ben c chaque enregistrement en fait...
 
Idée : le système de la base de données sait faire un tas de chose avec les données...y compris les comparer, retenir que celles qui correspondent à certains critères (spécifiés par toi), t'envoyer chier si tu essayes de rentrer des données non conformes à ce qui doit etre fait (pour éviter que tu pourrisses ta base, etc...)
 
===> Avec super peu de code tu pourras traiter hyper efficacement ta base
* un algo minuscule qui te permet d'ajouter un enregistrement :
  - si l'enregistrement existe, le nouveau n'est pas ajouté (tu peux aussi le rentrer si tu veux, c toi qui voit)
  - si il existe pas, il est ajouté
* tu pourras faire des requetes géniales, du style :  
 
- je veux tt les enregistrement qui contiennent "bienvenu à gattaca" (humour de merde, dsl ;) ) (ca te les sort tous, même ceux qui sont identiques si t'a choisi de tt mettre)
- je veux savoir si y'a des enregistrement qui contiennent "bienvenu à gattaca" (avec un UNIQUE, ca t'élimine les doublons
 
- je veux connaitre tt les enregistrement générés le mois de mars 2002 contenant "gataca"
 
 
etc...c sans limites...et t'a rien à programmer pour les algos de tri, le SGBDR fait ca pour toi, et de manière hyper optimisée...
 


---------------
Jubi Photos : Flickr - 500px
n°624419
benou
Posté le 29-01-2004 à 00:09:14  profilanswer
 

roievil a écrit :

j'ai eu un seul cours de BD


 [:mlc2]  
 
Ben tu ferait bien de te documenter par toi même parce que faire de l'info sans connaitre les BDD c'est ... en fait ca me parait même pas envisageable !!!
 

roievil a écrit :

Il ya aussi le fait que c'est un petit programme que je dois faire et je ne voulais pas me lancer dans le trouble de la base de données


ouais c'est sûr que si c'est juste un besoin unitaire, faut pas t'embêter avec une bdd ...


---------------
ma vie, mon oeuvre - HomePlayer
n°624421
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:10:45  profilanswer
 

grillaid ;)
 
-->tu devrais y penser...je connais pas tes volumes, mais peut devenir rentable...surtout que c pas difficile à mettre un base comme tu veux...si tu regardes un tuto mySQL, en même pas une heure elle est montée ta base...


---------------
Jubi Photos : Flickr - 500px
n°624423
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:11:16  profilanswer
 

re grillaid...mais qu'ils sont rapides ;)


---------------
Jubi Photos : Flickr - 500px
n°624426
benou
Posté le 29-01-2004 à 00:11:53  profilanswer
 

Jubijub a écrit :

grillaid ;)
 
-->tu devrais y penser...je connais pas tes volumes, mais peut devenir rentable...surtout que c pas difficile à mettre un base comme tu veux...si tu regardes un tuto mySQL, en même pas une heure elle est montée ta base...


nan mais si il connait pas le SQL, il va passer un peu plus d'une heure à le faire son bignou :o


---------------
ma vie, mon oeuvre - HomePlayer
n°624432
Taz
bisounours-codeur
Posté le 29-01-2004 à 00:14:41  profilanswer
 

moi je suis pas sur qu'un SGBD soit adapté. J'ai lu en entier 'Introduction à Perl et à la bioinformatique' et le genre de traitement, semblage à celui qui est présent ne me parait pas nécéssité un SGBD, et je ne suis même pas sur que ça y gagne en performance.
 
Par contre, il faut bien le dire, Java est ici excessivement lourd à manipuler

n°624434
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:15:28  profilanswer
 

bah, la base du select from where, t'a regardé 3 exemples t'a compris...
 
je dis pas, si y veut vérifier que sa table soit bien normalisée ou si y veut faire des autojointures ou des trucs un peu zarb à comprendre, je veux bien...mais là...


---------------
Jubi Photos : Flickr - 500px
n°624435
benou
Posté le 29-01-2004 à 00:15:57  profilanswer
 

taz a écrit :

et je ne suis même pas sur que ça y gagne en performance.


 :heink:


---------------
ma vie, mon oeuvre - HomePlayer
n°624436
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:16:18  profilanswer
 

taz a écrit :

moi je suis pas sur qu'un SGBD soit adapté. J'ai lu en entier 'Introduction à Perl et à la bioinformatique' et le genre de traitement, semblage à celui qui est présent ne me parait pas nécéssité un SGBD, et je ne suis même pas sur que ça y gagne en performance.
 
Par contre, il faut bien le dire, Java est ici excessivement lourd à manipuler


 
si y doit apprendre le perl, je persiste à dire qu'il aura plus vite fait de monter une base :D


---------------
Jubi Photos : Flickr - 500px
n°624438
roievil
Taking Fire, Need Assistance..
Posté le 29-01-2004 à 00:20:09  profilanswer
 

en tous les cas merci je connais SQL mais c'est deja presque reglé avec le lourd JAVA
 
ah si une questin c quoi grillaid?

n°624444
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:26:28  profilanswer
 

grillaid = grilled prononcé à la française = néologisme bati sur grillé qui veut dire que qqn a posté ce que tu voulais dire avant toi, et que donc tu t'ai fait grillé...
 
maintenant pourquoi ca a dégénéré, j'en sais rien... :lol:


---------------
Jubi Photos : Flickr - 500px
n°624448
roievil
Taking Fire, Need Assistance..
Posté le 29-01-2004 à 00:36:27  profilanswer
 

ça c pas sur que je l'eut trouve en faisant une recherche :  il y a des désagréments multiples à s'exiler. Bon moi je vais rentrer, il est 18h35 il fait -30 dehors et je vais faire du ping
 
a+ merci a tous

n°624451
Jubijub
Parce que je le VD bien
Posté le 29-01-2004 à 00:42:00  profilanswer
 

tu l'aurais jamais trouvé en france non plus...c très propre aux forums ca...


---------------
Jubi Photos : Flickr - 500px
n°1793731
idalloul
Posté le 30-09-2008 à 10:19:51  profilanswer
 

bonjour;
je cherche un prog java qui me permet de decouper un fichier texte par exemple en plusieurs fichiers mais en respectant les parametres suivants:
- j'aimerai recuperer des blocs de lignes de textes dont la premiere ligne commence par un caractere donné et la derniere ligne commence par un autre caractere.
 
exemple de ce fichier texte:
000SI00000000                                  
1111900619                        
2111900619          
2111900619                
4111900619  
4111900619    
5111900619                                        
61119006190                                                      
1261017693                                      
2261017693 232                                                                          
4261017693 23209    
5261017693 23209263                      
626101769300100
 
donc je voudrai recuperer dans le premier fichier les lignes a partir de la ligne qui commence par 1 jusqu'a la prochaine ligne qui commence par 6; ainsi de suite pour les autres fichiers.
 
si quelqu'un a une idée, ça me fera vraiment plaisir
c'est tres urgent ...!!!??????
 
merci d'avance

n°1794996
utoz
Posté le 02-10-2008 à 21:37:16  profilanswer
 

En regardant un peu la javadoc j'ai écrit ça:
 

Code :
  1. private String getBlocText(Scanner sc, String startWith, String endWith)
  2. {
  3. String s="";
  4. boolean copy = false;
  5. while(sc.hasNextLine()) {
  6.  String line = sc.nextLine();
  7.  if(copy) s += line+"\n";
  8.  if(hasNext("^"+startWith) && !copy) copy = true;
  9.  if(Pattern.matches("^"+endWith,line)) break;
  10. }
  11. return s;
  12. }


 
Attention j'ai tapé ca dans le bloc note, même pas compilé, encore moins testé, donc ça devrait pas marcher.
Mais c'est pour te donner une idée.


Message édité par utoz le 02-10-2008 à 21:40:03
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [JAVA] récupérer efficacement des sequences dans un fichier texte

 

Sujets relatifs
[JAVA] éliminer la redondance dans un fichier texte !Ouvrir un user form à l'ouverture d'un fichier excel
[Java] Sockets et httpcomment copier ou supprimer un fichier sur le disque dur en c++ ?
[PERL/CGI] Récupérer les variable du script ?probleme pour parser un format notation scientifique (ex : e-179) JAVA
Aligner verticalement une image puis un texte dans une cellule[VB] Problème avec la lecture d'un fichier
Plus de sujets relatifs à : [JAVA] récupérer efficacement des sequences dans un fichier texte


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR