2009-09-16 11 views
7

rjava è l'unico modo per connettere R a Java? Mi chiedo perché c'è un disclaimer in fondo alla pagina web:Interfaccia tra R e Java

Questa interfaccia utilizza Java riflessione API per trovare il metodo corretto quindi è molto più lento e non può essere giusto (funziona per semplice esempi ma potrebbe non essere per quelli più complessi). Per ora il suo uso di è sconsigliato nei programmi in quanto potrebbe cambiare in futuro.

Questo è un po 'preoccupante. Come affronta questo problema? So che Rweka ha un'interfaccia autonoma, quindi potrei esaminare quel pacchetto, ma forse molti utenti R hanno già affrontato il problema.

risposta

6

Penso che la dichiarazione di non responsabilità si applica solo se si utilizza l'operatore $ per accedere ai propri oggetti java. Finché ti attacchi con la funzione .jcall non dovrai sostenere il sovraccarico.

In termini di esperienza con rJava, ho trovato che funziona esattamente come pubblicizzato e per il mio pacchetto (farmR) non ha causato alcun problema di prestazioni. Tuttavia, non faccio un gran numero di chiamate in java e non ho usato nessuno dei toolkit della GUI java.

7

Non è l'unico uno come il progetto Omegahat ha anche il pacchetto RSJava. Ma come molte altre brillanti innovazioni di Omegahat (che in pratica è solo Duncan Temple Lang), questo non può essere costruito con la stessa facilità o affidabilità.

Il pacchetto rJava invece è utilizzato da circa trenta altri pacchetti

CADStat, contenitori, Deducer, JGR, RFreak, RImageJ, RJDBC, RLadyBug, aCGH.Spline, formica, arulesNBMiner, colbycol, cshapes, dynGraph, farmR, gWidgetsrJava, glmulti, helloJavaWorld, iplots, rSymPy, rcdk, rcdklibs, scagnostics, spcosa, RKEA, RWeka, Snowball, openNLP, wordnet

che prendo come abbastanza l'approvazione.

+2

Forse OT (abbastanza sicuro) ma, consiglio vivamente sia agli utenti R nuovi che esperti di dare un'occhiata al sito Web del progetto Omegahat. L'intera comunità R deve ringraziare Duncan Temple Lang per questa risorsa inestimabile (XML, i pacchetti RCurl sono i miei preferiti). – Paolo

1

Sono un utente Rweka, e posso dirvi che è incredibilmente veloce, supera la sola weka, mentre utilizza le sue funzioni nell'ambiente. Penso che il pacchetto R abbia un modo molto speciale di integrarsi all'interno delle librerie java del linguaggio, tuttavia queste librerie devono essere preparate per consentire questo. Per essere in grado di fare una corretta integrazione, dovrai fare una quantità importante di ricerche per vedere come far funzionare correttamente le cose. Vi consiglio di leggere la documentazione fornita con R, i dettagli che sono le migliori pratiche per scrivere le librerie di NEW LIBRARIES.