@Jeff_Perkinson , @ Milo ,
Dies bezieht sich auf eine Diskussion - Steigungs- und Schnittpunktfunktionen
Ich habe diese Diskussion als hilfreich empfunden. Ich verwende derzeit JMP 13. Wenn also in JMP 14 Entwicklungen vorgenommen werden, habe ich nicht unbedingt Zugriff darauf.
Aber hier meine Fragen:
Clear Log() ; Clear Globals(); Close All(DataTables,"No Save");
Slope = function({x,y},{default local},
If( !(Is Matrix( x ) & Is Matrix( y ) & N Col( x ) == 1 & N Col( y ) == 1),
Show( "x or y arguments are not matrices or they have more than one column" );
Throw();
,
x = J( N Row( x ), 1 ) || x; // put in an intercept column of 1s
beta = Inv( X` * X ) * X` * Y; // the least square estimates
beta[2];
);
);
Intercept = function({x,y},{default local},
If( !(Is Matrix( x ) & Is Matrix( y ) & N Col( x ) == 1 & N Col( y ) == 1),
Show( "x or y arguments are not matrices or they have more than one column" );
Throw();
,
x = J( N Row( x ), 1 ) || x; // put in an intercept column of 1s
beta = Inv( X` * X ) * X` * Y; // the least square estimates
beta[1];
);
); // end of intercept function
x1 = 0.05417099;
x2 = 0.057730865;
y1 = 30.5885;
y2 = 31.5885;
dt = New Table();
dt << New Column("X",Numeric,Continuous,<< Set Values({x1,x2}))
<< New Column("Y",Numeric,Continuous,<< Set Values({y1,y2}));
dt << New Script("Biv",Bivariate( Y( :Y ), X( :X ), Fit Line( {Line Color( {213, 72, 87} )} ) ));
SlopeTest = Slope(Matrix({y1,y2}),Matrix({x1,x2}));
Show(SlopeTest);
InterceptTest = Intercept(Matrix({y1,y2}),Matrix({x1,x2}));
Show(InterceptTest);
1. Warum stimmen Steigung und Schnittpunkt nicht mit dem Testfall überein, den ich wrt bivariate genommen habe?
2. Wenn die Funktion oder ihre Implementierung einen Fehler aufweist, wären Sie so freundlich, eine Alternative anzubieten?
Die Reihenfolge Ihrer Eingaben ist rückwärts.Auf der Funktion geht es Slope (x, y) und wenn Sie aufrufen, machen Sie Slope (y, x)
Hey @uday_guntupalli ,
Sie haben immer noch die Argumente umgekehrt.Siehe Screenshot:
@cwillden ,
Das war zwar ein guter Fang, aber das änderte nichts an den Ergebnissen, und die Funktion stimmt nicht mit bivariat überein
Sie haben die Argumente für die Slope- und Intercept-Funktion umgekehrt.Kehren Sie einfach die Reihenfolge der Matrizen um.