J'ai travaillé sur une bibliothèque de data wrangling pour JavaScript appelée data-forge. Il est inspiré par LINQ et Pandas.
Il peut être installé comme ceci:
npm install
Votre exemple fonctionnerait comme ceci:
var csvData = "Source,col1,col2,col3\n" +
"foo,1,2,3\n" +
"bar,3,4,5\n";
var dataForge = require('data-forge');
var dataFrame =
dataForge.fromCSV(csvData)
.parseInts([ "col1", "col2", "col3" ])
;
Si vos données étaient dans un fichier CSV, vous pouvez le charger comme ceci:
var dataFrame = dataForge.readFileSync(fileName)
.parseCSV()
.parseInts([ "col1", "col2", "col3" ])
;
Vous pouvez utiliser la select
méthode pour transformer des lignes.
Vous pouvez extraire une colonne en utilisant, getSeries
puis utiliser la select
méthode pour transformer les valeurs de cette colonne.
Vous récupérez vos données de la trame de données comme ceci:
var data = dataFrame.toArray();
Pour faire la moyenne d'une colonne:
var avg = dataFrame.getSeries("col1").average();
Vous pouvez faire beaucoup plus avec cela.
Vous pouvez trouver plus de documentation sur npm .