Multiple Hypothesenprüfung<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo zusammen,
Ich werde sehr bald eine große Anzahl von Hypothesetests durchführen müssen. Da es allgemein bekannt ist, dass in einem solchen Fall die Verwendung von p-Werten aufgrund von Fehlern des Typs I falsch ist, möchte ich die falsche Erkennungsrate und vor allem die positive falsche Erkennungsrate (Storey) verwenden q-Werte als meine "angepassten p-Werte" berechnen.
Meine Frage ist zweigeteilt:
1 Gibt es irgendwo einen Code zum Berechnen des pFDR und der entsprechenden q-Werte in JMP 9? Ich habe im Internet etwas gesehen, von dem ich annehme, dass solche Funktionen bereits in JMP Clinical vorhanden sind. Ich habe nur eine Lizenz für JMP 9, und ich habe keine Ahnung, wie hoch die klinischen Kosten für JMP sind oder ob ich ein Budget habe. Wenn also irgendwo ein einfacher JSL-Code vorhanden ist, kann dies für mich sehr nützlich sein.
2 Falls es einen solchen Code gibt, wird höchstwahrscheinlich ein Vektor von p-Werten als Ausgabe benötigt. Angenommen, ich habe eine JMP-Datei mit 1 kategorialen Variablen und 500 fortlaufenden, und ich möchte für jeden der 500 einen T-Test ausführen und in einer neuen Datei eine Variable mit den p-Werten speichern 500 von ihnen. Wie mache ich das in JSL? Ist das überhaupt möglich? Dass JMP 500 Tests automatisch ausführt und nur die p-Werte speichert?
Danke im Voraus....
Multiple HypothesenprüfungVielen Dank für die Hilfe, alle zusammen.
Nach dem Wochenende werde ich versuchen, mit dem Code zu arbeiten und die Folien lesen.
Vielen Dank Dave für den Link, es sieht so aus, als wäre es genau das, was ich brauche, und danke Ihnen allen für den Assistenten, ich weiß es zu schätzen!
Multiple HypothesenprüfungViele gute Informationen in diesen Folien. Danke für das Teilen von Dave.
Multiple HypothesenprüfungHier sind ein paar Folien, die erklären, wie das geht Verwenden Sie JSL, um eine Verbindung zu R herzustellen
Multiple HypothesenprüfungFür Matrizen || ist ein horizontaler Verkettungsoperator. Concat (m, owr ...) ist gleichwertig.
Ich habe keine Erfahrung mit FDR, aber ich habe ein wenig mit JMP-R-Verbindung gespielt. Unten ist ein Beispiel. Die erste Hälfte ist identisch mit dem obigen Beispiel. Die Ausgabe wird im jmp-Protokoll angezeigt. Um die Ausgabe als String abzurufen, fügen Sie den R-Submit in die Funktion Log Capture () ein.
dt = Öffnen ( "$ ENGLISH_SAMPLE_DATA / Big Class.jmp" ) ;
m = [] ;
Zum ( ich = 4 . ich <= N Col ( dt ) . ich ++
ow = Einweg ( Y ( Säule ( ich ) ) . X ( : Sex ) . t testen ( 1 ) . unsichtbar ) ;
Owr = Bericht ( ow ) ;
m = m || Owr [ "t Test" ] [ Nummer Col Box ( 4 )] [ 1 ] ;
) ;
dtp = Neue Tabelle ( "t-tests" . Neue Spalte ( "p" . numerisch . Werte setzen ( m ) ) ) ;
varname = "p" ;
R Init () ; // R-Verbindung initialisieren
R Senden ( dtp ) ; // Datentabelle an R senden
// Sende eine Zeichenkette mit R-Befehlen
R Senden ( "Daten <- dtp
Namen (Daten)
anhängen (Daten)
bedeuten(" || varname || ") ) ;
Zeit () ;
Multiple HypothesenprüfungDanke, das ist eine gute Idee ...
Es gibt noch eine Sache, die ich erledigen muss (akzeptiere meine Entschuldigung, da ich zu beschäftigt bin, habe ich keine Zeit, um JSL richtig zu lernen ...). Aus Ihrem Code bekomme ich eine JMP-Tabelle, die 1 Spalte mit p-Werten enthält, oder? Sollte ich jetzt einen JSL-Code schreiben, der eine Verbindung zu R herstellt, wenn ja, brauche ich eine kleine Anleitung oder sollte ich die Tabelle exportieren und direkt von R aus arbeiten, sollte es funktionieren, oder?
Wenn mir jemand ein kurzes einfaches Beispiel schreiben kann, wie ich nach dem Umspulen der neuen Tabelle eine Verbindung zu R herstellen und sogar etwas einfaches wie mean (p) ausführen kann, kann ich es später für das pFDR ändern.
und eine letzte Frage (Versprechen) in der Zeile:
m = m || Owr [ "t Test" ] [ Nummer Col Box ( 4 )] [ 1 ] ;
warum ich oder owr [...]? Ich meine, warum das || wird gebraucht ?
Vielen Dank, eine Million, Sie sparen mir viel Zeit beim Export großer Datenmengen nach R und beim Codieren dort.
Multiple Hypothesenprüfung1 Frei verfügbaren JMP-Code ist mir nicht bekannt, aber es gibt mehrere Optionen in R. http://strimmerlab.org/notes/fdr.html listet einige FDR-bezogene Pakete auf. JMP 9 kann eine Verbindung zu R herstellen und Ergebnisse abrufen. Dies ist wahrscheinlich eine viel einfachere Aufgabe, als die Algorithmen in JSL von Grund auf neu zu codieren.
2 Das sollte möglich sein. Im Folgenden finden Sie ein Beispiel, das Ihnen einige Ideen geben kann. Es funktioniert, indem alle numerischen Y-Spalten rechts von der festen X-Spalte in einer Einweganpassung durchlaufen werden und der p-Wert (zweiseitiger t-Test) aus dem Bericht abgerufen und in eine Matrix eingefügt wird. Die Matrix wird schließlich einer Spalte in einer neuen Datentabelle hinzugefügt.
dt = Öffnen ( "$ ENGLISH_SAMPLE_DATA / Big Class.jmp" ) ;
m = [] ;
Zum ( ich = 4 . ich <= N Col ( dt ) . ich ++
ow = Einweg ( Y ( Säule ( ich ) ) . X ( : Sex ) . t testen ( 1 ) . unsichtbar ) ;
Owr = Bericht ( ow ) ;
m = m || Owr [ "t Test" ] [ Nummer Col Box ( 4 )] [ 1 ] ;
) ;
Neue Tabelle ( "t-tests" . Neue Spalte ( "p" . numerisch . Werte setzen ( m ) ) ) ;
Multiple HypothesenprüfungIch denke, dass pFDR in JMP Genomics vorhanden ist, aber nicht in Standard (oder Pro) JMP