subtub / csvP5

Use the new Processing 2.0 Table class instead!
http://subtub.github.com/csvP5/
MIT License
3 stars 0 forks source link

math utils #4

Open paulvollmer opened 12 years ago

paulvollmer commented 12 years ago

nach dem marathon frage ich mich ob die library nicht ein paar mathe erweiterungen gebrauchen könnte. int totalRowSum = csv.totalSum(5); // die summe aller spalten aus zeile 5 oder int totalRowSum = csv.row(5).totalSum(); mit der sntax könnte man das gleiche auch für spalten machen. int totalRowSum = csv.col(5).totalSum();

wie die syntax dafür aussehen soll ist nochmal eine andere fragen

paulvollmer commented 12 years ago

update: @Powder ich habe mir grad erst die ArrayUtils genauer angeschaut. da hast du ja schon angefangen :) oder könnte man deine TroveP5 dafür benutzen / gibt es für die trove arraylist schon math utils? das wäre ja super, dann könnten wir die lib verwenden und müssen keine eigenen berechnungen machen. oder ist Trove nur für dynamische arrays?

timpulver commented 12 years ago

Trove ist nur für die Datenspeicherung zu gebrauchen... Hatte auch schon angefangen ein paar Funktionen für min und max-Berechnungen zu schreiben aber wieder verworfen. Das Ding is, du musst jeder Column einen Datentyp zuweisen oder halt Funktionen, wie getMinInt, getMinFloat benutzen.

timpulver commented 12 years ago

Aber is generell ne gute Sache, nur das clean zu machen is so ne Sache. Man weiß ja nie, was in der CSV-Datei wirklich drin steckt. Man müsste jedes Feld cleanen (Anführungsstriche und Whitespaces weg) und das ganze als Float behandeln.

paulvollmer commented 12 years ago

oder für den table einen datentypen festlegen, eine zeile/spalte oder auch als matrix. z.B.

tableDataType(INT);
tableDataRow(INT, FLOAT, INT, INT...);

dafür wäre es aber grundsetzlich eine frage des aufbaus. ich würde eine main klasse csvP5 bauen welche das daten array enthällt. da ist die frage ob es sinn mach das ganze in zwei arrays zu spalten. beide klassen bedienen sich an dem data array

csvP5
   DataArray[][];
   RowClass();
   ColClass();

Die row/col klassen können beide auf die math utils zugreifen. somit könnte man eine row(2) auswählen und aus der row z.B. den totalSum() odertotalSumSelection(in, out)berechnen.