J'essaie de trouver la meilleure façon de tirer une valeur d'un fichier CSV appelé lookup.csv
basé sur une valeur dans master.csv
, puis enregistrez le nouveau fichier en tant que output.csv
.Tirer une valeur d'un CSV basé sur une valeur dans un autre
Dans l'exemple ci-dessous, le fichier maître comporte trois colonnes de données, la dernière colonne étant City
. Je voudrais remplacer le nom City
par le City Code
à partir du fichier lookup.csv
.
Je n'ai pas de base de données que je puisse consulter, donc je dois utiliser le fichier CSV. J'essaie d'utiliser FasterCSV avec Ruby 1.8.7.
Exemple Structure du fichier:
master.csv:
First Name | Last Name | City
Joey | Jello | Atlanta
Home | Boy | Dallas
lookup.csv:
City | City ID
Atlanta | 12345
Dallas | 12346
Houston | 12347
output.csv:
First Name | Last Name | City
Joey | Jello | 12345
Home | Boy | 12346
« Je n'ai pas un DB » Pourquoi ne pas regarder dans SQLite? Il est disponible pour presque tous les systèmes d'exploitation et idéal pour les bases de données temporaires et en mémoire. Cela simplifierait et accélérerait votre tâche. Chargez le CSV dedans, alors vous pouvez faire des accès aléatoires au lieu des lectures séquentielles de dossier. –