Open paulvollmer opened 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?
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.
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.
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.
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
oderint 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