Entrez toute la colonne des inconnues pour la prédiction inverseBonjour,
J'ai 100 inconnues à calculer à partir d'un ajustement linéaire. J'ai suivi les instructions pour "Inverse Prediction" montré ici:
https://www.jmp.com/support/help/14/inverse-prediction-2.shtml#149268
Cela a bien fonctionné, mais en utilisant cette méthode, je ne peux saisir (manuellement) que 8 inconnues à la fois. Existe-t-il une autre façon de faire cela (comme il y en a dans Prism) ? Ou y a-t-il un script qui peut le faire? Méthode du prisme : https://www.graphpad.com/support/faq/prism-3-calculating-unknown-concentrations-using-a-standard-curve/
Merci!
Mégane
Re : Entrez une colonne entière d'inconnus pour la prédiction inverseJe voulais juste réitérer à quel point ce script est génial. En tant que nouvel utilisateur de JMP, j'apprécie vraiment vos efforts.
Re : Entrez une colonne entière d'inconnus pour la prédiction inverseCela fonctionne et c'est un bon début pour notre application ! Merci beaucoup!! Ensuite, nous devons comprendre comment faire la prédiction inverse non pas par Chip, mais par toutes les valeurs de courbe standard à travers les Chips. (Nous venons de commencer à apprendre JMP.)Re : Entrez une colonne entière d'inconnus pour la prédiction inverseCe script effectuera la prédiction inverse pour chaque ID de puce séparément.
Names Default to Here( 1 );
dt = Current Data Table();
Column( 2 ) << Data Type( "Numeric" ) << Modeling Type( "Continuous" );
Column( 3 ) << Data Type( "Numeric" ) << Modeling Type( "Continuous" );
dt << New Column( "Lower 95%", "Numeric", "Continuous" )
<< New Column( "Upper 95%", "Numeric", "Continuous" );
Summarize( chip = By( :Chip ID ) );
n groups = N Items( chip );
For( c = 1, c <= n groups, c++,
data = dt << Get Rows Where( :Chip ID == chip[c] );
dt << Select Where( :Chip ID != chip[c] ) << Exclude;
fls = dt << Fit Model(
Y( :Median Electrode ),
Effects( :Name( "gDNA pg/uL" ) ),
Personality( "Standard Least Squares" ),
Emphasis( "Minimal Report" ),
Run
);
unknown = :Median Electrode[data[3]::data[N Row(data)-2]];
Eval(
Substitute(
Expr(
fls << Inverse Prediction(
Term Value( Name( "gDNA pg/uL" )(.) ),
Response( rrr )
)
),
Expr( rrr ),
unknown
)
);
inv pred report = Report( fls )["Inverse Prediction"];
inv pred = inv pred report[NumberColBox(2)] << Get As Matrix;
lower = inv pred report[NumberColBox(3)] << Get As Matrix;
upper = inv pred report[NumberColBox(4)] << Get As Matrix;
fls << Close Window;
For( i = 1, i < N Row( data ) - 3, i++,
Column( 2 )[data[i+2]] = inv pred[i];
Column( 4 )[data[i+2]] = lower[i];
Column( 5 )[data[i+2]] = upper[i];
);
dt << Exclude << Clear Select;
);
Remarque : cela échouera à moins que vous ne supprimiez les lignes vides à la fin. Il manque à l'un des étalons la valeur 10 pour la concentration connue.
Re : Entrez une colonne entière d'inconnus pour la prédiction inverseSalut Mark,
J'ai joint quelques exemples de données à cette note - la norme et les inconnues se trouvent dans la même table de données.
Dans cet exemple, j'ai une courbe standard avec deux points 10 et 150 en double. Je veux interpoler les inconnues [ici gDNA pg/uL] que j'ai laissées en blanc.
Mégane
Re : Entrez une colonne entière d'inconnus pour la prédiction inverseJe pense qu'un script fournirait la meilleure solution. Les normes et les inconnues sont-elles dans le même tableau de données ou dans des tableaux de données séparés ? Mieux encore, pouvez-vous fournir un exemple d'un ensemble de données typique avec à la fois les normes et les inconnues ?