Singulärwertzerlegung außerhalb von JMPHallo, ich bin ein langjähriger JMP-Benutzer (3.2!) und ein absolut unbegabter Anfänger in R. Die Textanalyse ist neu für mich als Ökologe, aber ich habe es wirklich genossen, mit der Text Explorer-Plattform zu spielen. Ich habe eine spärliche Dokumenttermmatrix erstellt, die ich einer Singularwertzerlegung unterziehen möchte, um zusätzliche Analysen in JMP an einer dichten Matrix von Singularwerten für ~100 Vektoren durchzuführen. Ich bin ein bisschen an eine Wand gestoßen, da ich JMP Pro nicht habe (ich es mir nicht leisten kann). Ich denke, das bedeutet, dass ich meine Sparse-Dokumenttermmatrix in R einlesen, eine Art svd-Funktion ausführen und dann meine neue dichte Matrix wieder in JMP einlesen muss. Dies scheint eine einfache Aufgabe für jemanden zu sein, der sich mit Textanalyse auskennt und sich mit R auskennt. Ich habe Mühe, herauszufinden, welches R-Paket ich dafür verwenden soll (es scheint, als gäbe es viele). Als ich mir die Dokumentation für verschiedene Pakete ansah, hatte ich Mühe herauszufinden, welche Funktionen und Argumente ich verwenden sollte, um diese Aufgabe zu erfüllen. Ich weiß, es ist an der Zeit, dass ich mich dazu entschließe, R zu lernen. JMP hat mich viele Jahre lang vor dieser Unvermeidbarkeit bewahrt. Wenn es jemanden da draußen gibt, der R-Ratschläge oder besser noch Code geben könnte, der eine dünn besetzte Matrix als .csv einlesen würde, eine dichte Einzelwertmatrix in R erstellen und diese Matrix dann als neue .csv schreiben würde , Ich wäre sehr dankbar. Danke schön!Betreff: Singulärwertzerlegung außerhalb von JMPDanke schön, @G_M . Ich werde Ihre Antwort als "Lösung" für mein Problem bezeichnen, da ich mir ziemlich sicher bin, dass die einzige Lösung darin besteht, Textanalysen außerhalb von JMP durchzuführen. Ihr Beitrag war hilfreich, um mir zu zeigen, wie einfach es ist, R von JMP aus anzurufen. Dies ist wahrscheinlich nur der Anstoß, den ich brauchte, um mich dazu zu verpflichten, zu lernen, wie man die beiden Tools integriert.
Betreff: Singulärwertzerlegung außerhalb von JMP@caseylott Ein guter Einstieg in die Verwendung von R und JMP besteht darin, Ergebnisse, mit denen Sie in JMP vertraut sind, in R zu replizieren.
Wie Sie bevorzuge ich JMP aus so vielen Gründen gegenüber R, dass ich R bereits 2009 verwendet habe, als ich einem Führungsteam Ergebnisse präsentierte und
Wie immer hatte die Führungskraft zusätzliche Fragen (was ich nicht vorhergesehen hatte, ich bin darin besser geworden) und ich konnte nicht einfach
Produzieren Sie die neue Analyse live in R.Ich bat um 25 Minuten, um die Analyse durchzuführen und Ergebnisse zu liefern ... Ich verlor ihre Aufmerksamkeit.Diese Nacht
Ich ging nach Hause und überlegte, wie ich dies in Zukunft vermeiden könnte ... 1) weitere Analysen besser antizipieren und 2) eine agilere Software identifizieren.
JMP ist wieder in mein Leben getreten (ein Kollege hat mich einige Jahre zuvor mit JMP bekannt gemacht) und ist seitdem meine bevorzugte Software.
Hier ist jedoch eine JMP-zu-R-Syntax, die Ihnen den Einstieg ermöglicht.
Das ist vielleicht zu einfach, aber ich hoffe, es ist hilfreich.Ich verwende R, um nichtlineare Mixed-Effects-Modelle und polytome IRT-Modelle zu schätzen, und habe kürzlich mit der Schätzung begonnen
Bayes'sche Modelle, die sowohl R als auch JAGS in JMP verwenden.
Names Default To Here( 1 );
//Open Big Class in JMP
df = Open( "$SAMPLE_DATA/Big Class.jmp" );
//execute bivariate regression of weight on height in JMP
df << Bivariate( Y( :weight ), X( :height ), Fit Line( {Line Color( {213, 72, 87} )} ) );
//make sure that you have embedded log open in your JSL Scripting window.
//Initiate R
R Init();
//send data frame to R
R Send( df );
//submit R Code for bivariate regression of weight on height
R Submit(
"\[
fit1 <- lm(weight~height, data = df)
summary(fit1)
]\"
);//close R Submit
//Look into the log and see the R Results
Betreff: Singulärwertzerlegung außerhalb von JMPOK, Wenn ich verstehe @Mark_Bailey Richtig, SVD ist ein "Game-Changer"; Sie benötigen jedoch JMP Pro, um dieses Spiel mit JMP zu spielen. Ist das richtig?
Wenn ich etwas weiter darüber nachdenke, scheint es, als ob JMP (Nicht-Pro-Version) keine der Textanalysefunktionen zulässt, die ich in Videos gesehen oder in Blogs gelesen habe: latente Klassenanalyse, latente semantische Analyse, Themenanalyse, Diskriminanzanalyse, Dokumenten-Clustering oder Term-Clustering. Als langjähriger JMP-Benutzer, der sich JMP, aber nicht JMP Pro leisten kann, versuche ich immer noch, meine effizienteren nächsten Schritte herauszufinden.
Wenn ich beispielsweise in der Lage wäre, eine Singulärwertmatrix zu generieren (z. B. außerhalb von JMP in R) und diese Matrix wieder in JMP einzufügen, scheint es, als ob diese Analysen für mich immer noch nicht verfügbar wären, zumindest nicht direkt, da ich dies tue nicht einmal Menüpunkte (über den Text-Explorer-Hotspot) für eine dieser Analyseplattformen. Ich weiß einfach nicht genug über die statistischen Details, um zu verstehen, ob der Versuch, diese Art der Textanalyse in JMP mit Standardhauptkomponenten oder Clusterplattformen zu replizieren, eine gute Idee ist. Zum Beispiel habe ich gerade einen Beitrag von gesehen @LauraCS wo sie sagte " Die latente semantische Analyse (LSA) ist einfach eine PCA, die an einer Korrelationsmatrix von Textbegriffen durchgeführt wird (jedoch ohne beteiligte Rotationen). Ich frage mich, wie wörtlich diese Aussage ist. Bedeutet dies, dass ich, wenn ich eine Einzelwertmatrix in JMP einbringen könnte, die PCA-Tools von JMP verwenden könnte, um Analysen durchzuführen, die im Wesentlichen mit der latenten semantischen Analyse und der latenten Klassenanalyse identisch sind? Es erscheint mir irgendwie riskant, dies ohne ein besseres Verständnis der statistischen Details zu tun.
Also ... nachdem ich mich ein paar Tage lang mit diesem Thema beschäftigt habe, scheint es meine beste Option zu sein, herauszufinden, wie ich zwischen JMP (zur Pflege einer Dokumentbegriffsmatrix und Visualisierung) und R (für Analysen) hin und her wechseln kann. wie ich in der gesehen habe @herush Und @andrewtkarl Video mit dem Titel "Text Mining in JMP und R". Scheint ein guter Zeitpunkt zu sein, um mit einem meiner R-Freunde zu Mittag zu essen und eine Zusammenarbeit anzukündigen.
Ich habe keine Ahnung, wie viele JMP-Benutzer an meiner Stelle sind (z. B. unwahrscheinlich, dass sie zu JMP Pro aufsteigen). Vielleicht treibe ich nur Dinge voran, die der typische JMP-Benutzer nicht versteht. Wenn es jedoch andere wie mich gibt, wäre es großartig, wenn ich den Weg zu zusätzlichen "Hilfe"- oder "Schulungs"-Ressourcen (z. B. Blogs, Tutorials, Videos von Drittanbietern) finden könnte, die Synergien zwischen JMP und R und Möglichkeiten veranschaulichen um Situationen wie die, in der ich mich gerade befinde, zu bewältigen, in der zwei Tools (JMP und R) erforderlich sind, um die Arbeit zu erledigen.
Wie ich schon sagte. Ich liebe JMP absolut und habe es während meiner gesamten Karriere verwendet. Das wird sich nicht ändern, aber es scheint, als wäre es an der Zeit, dass ich mich anstrenge und R lerne. Mir wurde gesagt, dass es meine Zeit wert sein wird, aber verdammt, ich bevorzuge wirklich den interaktiven, menügesteuerten Workflow von JMP.
Betreff: Singulärwertzerlegung außerhalb von JMPDie neue SVD-Routine im Text-Explorer ist ein echter Game-Changer und genau das, was die weitere Textanalyse braucht.
Das ist alles, was ich zu bieten habe. Ich hoffe, dass andere neben der Reduzierung der Größe des DMT einige nützliche Vorschläge haben.
Betreff: Singulärwertzerlegung außerhalb von JMPDanke, Markus. Ich habe nicht getestet, wie weit ich beim Verkleinern meiner Dokumentbegriffsmatrix gehen muss, um die latente semantische Klassenanalyse in der JMP-Plattform (nicht JMP Pro) verwenden zu können. Vielleicht könnte ich das zum Laufen bringen, und ich werde es versuchen, aber was ist, wenn ich einen noch größeren Dokumentensatz habe? Ich prognostiziere, dass ich wieder auf dieses Problem stoßen werde.
Ich denke, dass meine ursprüngliche Einschätzung immer noch richtig sein kann. Es scheint, als ob ich noch eine Möglichkeit brauche, meine (in JMP erstellte) spärliche Dokumenttermmatrix in eine dichte Matrix (über Singulärwertzerlegung in R) umzuwandeln, damit ich die dichte Matrix für zusätzliche multivariate Analysen wieder in JMP einlesen kann.
Mit anderen Worten, ich denke, dass meine Unfähigkeit, ohne JMP Pro eine dichte Matrix von Einzelwerten in JMP zu erstellen, meine Fähigkeit, mit der Textanalyse in JMP sehr weit zu gehen, wirklich einschränkt.
Wenn jemand andere Vorschläge für den Umgang damit in JMP oder vielleicht einige R-basierte Lösungen hat, würde ich sie gerne hören.
Betreff: Singulärwertzerlegung außerhalb von JMPErstens habe ich mich vertan. Es fällt mir schwer, mich daran zu erinnern, welche Funktionen in jeder Version von JMP enthalten sind und welche Unterschiede zwischen JMP und JMP Pro bestehen. Sie haben Recht: In JMP sind nur PCA- und latente Klassenanalysen verfügbar.
Zweitens hatte ich Angst, dass der große und spärliche DTM außerhalb der Text-Explorer-Plattform zu viel für JMP sein würde. Sie können versuchen, die Begriffsliste zu kürzen. Im Allgemeinen kann das Kuratieren der Begriffs- und Phrasenliste zu viel aussagekräftigeren Analysen führen, als sich auf die Standardparameter zu verlassen. Dies ist eine Möglichkeit, die Größe des DTM zu reduzieren. Sie können beim Speichern des DTM auch die maximale Anzahl der Begriffe reduzieren oder die minimale Begriffshäufigkeit erhöhen.
Zuletzt, verwenden Sie 64-Bit-JMP?
Betreff: Singulärwertzerlegung außerhalb von JMPOkay, danke für den Vorschlag. Ich habe bisher ein paar Dinge ausprobiert, die nicht funktioniert haben. Vielleicht mache ich etwas falsch. Ich habe die gewichtete Dokumententermmatrix gespeichert und sie dann als y-Variable eingegeben für: 1) die Hauptkomponentenplattform und 2) die latente Klassenanalyseplattform. Ich sehe keine Optionen für die latente semantische Analyse in meiner Nicht-Pro-Version von JMP. Wo würden sich diese befinden?
Wenn ich versuche, die gewichtete Dokumententermmatrix auf der Hauptkomponentenplattform auszuführen, dreht sich JMP einfach und stürzt unweigerlich ab.
Wenn ich versuche, die Dokumentbegriffsmatrix in der Latentklassenanalyseplattform in die Y-Rolle zu versetzen, erhalte ich die Meldung, dass ich einen nicht unterstützten Datentyp verwende.
Irgendwelche Vorschläge?
Betreff: Singulärwertzerlegung außerhalb von JMPSie können R gerne mit JMP verwenden, aber ich denke nicht, dass dies erforderlich ist. Sie können die gewichtete Dokument-Term-Matrix aus dem Text-Explorer speichern und dann die neuen Datenspalten mit jeder Plattform in JMP analysieren, einschließlich denen in der Gruppe Multivariate. Dazu gehören Hauptkomponentenanalyse, latente Klassenanalyse und latente semantische Analyse ohne JMP Pro.
Beachten Sie, dass die Versionen in TE für Sparse-Matrizen wie den DTM optimiert sind, aber Sie sollten zumindest versuchen, die eigenständigen Plattformen zu verwenden.