designfrage



  • Hallo, in einem Projekt haben wir eine Klasse für einen CSV-Artigen Datentyp geschrieben. Das Projekt ist in Python geschrieben.

    Nun sollte es hierfür noch einige Statistik-Funktionen geben.
    Statt nun alles mögliche selbst zu schreiben, hab ich mir gedacht eine Anbindung an R (rpy2) zu nutzen.

    Nun frage ich mich, wie man das am besten gestaltet. R hat ja seine eigenen Datentypen.

    Ich mache besser mal ein Beispiel, unsere Klasse nenne ich csv.
    Eine nötige Funktion wäre zB die Korrelation zwischen 2 Spalten.

    Ich fage mich ob das gut wäre, zB:

    // Aufruf
    csv.cor(col1, col2)
    
    //Funktion in Pseudocode
    cor(col1, col2):
      R.cor( FloatVector(this.get_data(col1)), FloatVector(this.get_data(col2)) )
    
    // WObei R die Anbindung an R wäre, konkreter rpy2.robjects.r
    

    Was mir hieran nicht gefällt, ist dass ich dem Nutzer zwar schöne Funktionen mitgebe, aber im Grunde nur die R-Methoden kapsele und die nötigen Casts durchführe.

    Im Grunde könnte der Nutzer aber auch einfach unser Datenformat mit Hilfe von read.table slebst öffnen und hätte damit alle Möglichkeiten von R offen.

    Irgendwie weiß ich nicht wie ich unser Format am besten mit R anfreunden soll, vlt ein paar Tipps?


Log in to reply