Wir haben einen fortgeschrittenen Benutzer, der vorgeschlagen hat, add hinzuzufügen Nomogramm, DCA-Entscheidungskurve und NRI in der Vorhersagemodellierung. Diese Funktionen werden jetzt von R verwendet und die Benutzer erwarten, sie auch in JMP zu verwenden, insbesondere die medizinischen Benutzer.
@mia_stephens
Hallo Mia
Vielen Dank für die Beachtung meines Vorschlags.
Ich habe die SE gebeten, ein Add-In zu programmieren, indem ich JMP mit R kombiniere.Die JSL lautet wie folgt:
// Expressions List
LoadExprs = expr(
InitR = expr(
R Init();
R Submit( "
library(survival)
library(rms)
" );
);
MakeNomoPlot = expr(
yy = yvar << Get Items;
cc = cvar << Get Items;
xx = xvar << Get Items;
R send(yy);
R send(cc);
R send(xx);
dt = Current Data Table();
R Send(dt);
R Submit(
EvalInsert("\[
dd<-datadist(dt)
options(datadist="dd")
t1 <- yy[1]
t2 <- cc[1]
t3 <- paste(xx, collapse = "+")
formula=eval(parse(text=paste("Surv(",t1,",",t2,")~",t3)))
f<-cph(formula,data=lung,x=TRUE,y=TRUE,surv=TRUE)
survival<-Survival(f)
survival1<-function(x)survival(365,x)
survival2<-function(x)survival(730,x)
nom<-nomogram(f,fun=list(survival1,survival2),
fun.at=c(0.05,seq(0.1,0.9,by=0.05),0.95),
funlabel=c('1 year survival','2 year survival'))
plot(nom)
]\"));
);
CapturePlot = expr(
JMP_plot = R Get Graphics(png);
New Window("Imported Plot", Picture Box(JMP_Plot));
);
RunClose = expr(
inwin << Close Window; // close window
R Term( ); //Close r connection
);
);
LoadExprs; //load all the expressions that reside at the end of the file
InitR; //Start R Connection and load libraries
// Prompt for data table if none is open
if(IsEmpty(Current Data Table()), dt = Open(), dt = Current Data Table());
//Draw Window and Create Fields and Buttons
inwin = New Window( //Draw New Window and name inwin
"列线图", //Window Title
Panel Box("选择列", //Draws visible box
H List Box( //Invisible box for layout - glues horizontally
clb1 = Col List Box( all ), //Column listbox, with name clb1 so we can access later
// Draw First Lineup Box (invisible, provides arrangement) for Selecting Columns
Lineup Box( N Col( 2 ), //with 2 columns indicated, each pair will span a row
//First Row
Button Box( "Y,事件时间", yvar << setitems( clb1 << getselected ) ),
yvar = Col List Box( minitems( 1 ), maxitems( 1 ), nlines( 1 ) ),
//Second Row
Button Box( "删失", cvar << setitems( clb1 << getselected ) ),
cvar = Col List Box( minitems( 1 ), maxitems( 1 ), nlines( 1 ) ),
//Third Row
Button Box( "X,因子", xvar << setitems( clb1 << Get Selected ) ),
xvar = Col List Box( minitems( 1 ), maxitems( 100 ), nlines( 10 ) ),
),
// Draw Second Lineup Box for Buttons
Lineup Box( N Col( 1 ),
Button Box("确定", MakeNomoPlot),
Button Box("在JMP窗口中显示", CapturePlot),
Button Box("关闭", RunClose )
) //close Lineup Box
) //close H List Box
) //close Panel box
); //close New WindowDanke für die Information.@Klar , gibt es ein Skript oder Add-in, das Sie freigeben können?
Hier ist, was ich gefunden habe Wikipedia .Ich denke, dieser Link beschreibt auch seine Verwendung. Ist das korrekt @Klar
Hallo Mia
Nomogramm, DCA-Entscheidungskurve und NRI wird von unserem erfahrenen JMP-Benutzer in einem Krankenhaus als erweiterte und neue Funktion in der Vorhersagemodellierung vorgeschlagen. Er bringt den Ärzten im Krankenhaus die Verwendung von JMP bei. Diese neuen fu nctions können im Moment in R durchgeführt werden.
Ich werde dieses Mal zuerst über das Nomogramm berichten.
Das Nomogramm wird häufig in der medizinischen Forschung und in Papieren verwendet und ist bei Medizinern sehr beliebt.
Ich habe vor Monaten eine Umfrage unter den Ärzten in den Krankenhäusern durchgeführt. Fast 80-90 % der Ärzte müssen das Nomogramm in ihren Papieren verwenden. Ich bat china SE, JSL von JMP And R zu programmieren, und teilte es mit den Kunden. Aber die Kunden wollen immer noch JMP verwenden, um es direkt zu machen.
Wenn wir das Nomogramm zu JMP hinzufügen könnten, würde JMP unter diesen medizinischen Mitarbeitern wettbewerbsfähiger werden.

Können Sie bitte weitere Einzelheiten angeben? Links zu Referenzen, Links zu anderen Anfragen (falls vorhanden), ein Beispiel, Screenshots, ...
Danke!