J'ai utilisé SmarterCSV pour convertir le fichier en format lit en fichier csv et en changeant les noms des colonnes.Comment utiliser Ruby pour combiner plusieurs fichiers CSV dans un gros fichier CSV?
Maintenant j'ai rassemblé plusieurs fichiers CSV, et je veux les combiner en un gros fichier CSV.
En test3.csv, il y a trois colonnes, chromosome
, start_site
et end_site
qui seront utilisés, et les trois autres colonnes, binding_site_pattern
, score
et strand
qui seront supprimés.
En ajoutant trois nouvelles colonnes dans le fichier test3.csv, les données sont les mêmes dans la colonne transcription_factor
: Cmyc
, dans la colonne cell_type
: PWM
, dans la colonne project_name
: JASPAR
.
Quelqu'un a des idées sur celui-ci?
test1.csv
transcription_factor,cell_type,chromosome,start_site,end_site,project_name
Cmyc,GM12878,11,809296,809827,ENCODE
Cmyc,GM12878,11,6704236,6704683,ENCODE
test2.csv
transcription_factor,cell_type,chromosome,start_site,end_site,project_name
Cmyc,H1ESC,19,9710417,9710587,ENCODE
Cmyc,H1ESC,11,541754,542137,ENCODE
test3.csv
chromosome,start_site,end_site,binding_site_pattern,score,strand
chr1,21942,21953,AAGCACGTGGT,1752,+
chr1,21943,21954,AACCACGTGCT,1335,-
résultat combiné désiré:
transcription_factor,cell_type,chromosome,start_site,end_site,project_name
Cmyc,GM12878,11,809296,809827,ENCODE
Cmyc,GM12878,11,6704236,6704683,ENCODE
Cmyc,H1ESC,19,9710417,9710587,ENCODE
Cmyc,H1ESC,11,541754,542137,ENCODE
Cmyc,PWM,1,21942,21953,JASPAR
Cmyc,PWM,1,21943,21954,JASPAR
merci, ça aide vraiment, au fait, que signifie *? – Michael
@ user3239006, c'est l'opérateur ["splat"] (http://endofline.wordpress.com/2011/01/21/the-strange-ruby-splat/), qui fait des choses dans les tableaux. Il est utilisé ici pour "décompresser" le tableau 'hs' en un certain nombre d'arguments séparés pour' values_at'. –
J'ai compris. Merci. – Michael