Zufallsstichprobe mit ErsatzIst das möglich? Es scheint nicht, dass die Funktion Tabellen -> Teilmenge dies zulässt.
Ich erkenne, dass Sie Bootstrap-Schätzungen in verschiedenen Teilen der JMP Pro-Plattform erhalten können, aber ich frage mich speziell, wie man Datentabellen generiert.
Danke!
Betreff: Zufallsstichprobe mit ErsatzHallo Wendy,
Ja, siehe Skript unten. Es nimmt einen 4-zeiligen Tisch und entnimmt 10 Proben mit Ersatz. Die AsList () Funktion wird benötigt, um dies abzurufen, ansonsten erhalten Sie leider eine Fehlermeldung.
Names Default To Here( 1 );
dt = astable((1::4)`);
nSamples = 10;
dt2 = dt << subset( rows( As List( J( nSamples, 1, Random Integer( 1, N Row( dt ) ) ) ) ) );
Betreff: Zufallsstichprobe mit ErsatzHallo Wendy, das kannst du aus der Datentabelle machen. Klicken Sie mit der rechten Maustaste auf einen Spaltenkopf, wählen Sie Neue Formelspalte, Zufällig und dann Mit Ersetzung abtasten.
Betreff: Zufallsstichprobe mit ErsatzHallo Wendy, ich sollte das klären.
Die von Mia erwähnte neue Formelspaltentechnik funktioniert so lange, wie der Benutzer eine Stichprobe wünscht, deren Größe kleiner oder gleich der Anzahl der Zeilen in der Tabelle ist. Wenn Sie ein größeres Beispiel benötigen, ist mir keine Möglichkeit bekannt (effizient, d. H. Eine Tabelle mit sich selbst zu verknüpfen, bis sie groß genug ist, ineffizient ist, aber funktioniert). Vielleicht kommen andere dazu.
Das Skript funktioniert für jede Stichprobengröße, benötigt jedoch die Funktion As List (), die um die Zeilenmatrix gewickelt wird, wenn die Anzahl der angeforderten Zeilen die Anzahl der Zeilen in der Originaltabelle überschreitet.
Betreff: Zufallsstichprobe mit ErsatzDanke euch beiden! Ja - Ich denke, der Kunde muss möglicherweise überbemustert werden, daher wäre es hilfreich zu wissen, wie andere dies erreicht haben.
Die andere verwandte Frage betrifft die Schichtung. Ist es möglich, mit Ersetzung eine Neuabtastung durchzuführen, um die Verteilung eines anderen Attributs sicherzustellen?
Betreff: Zufallsstichprobe mit ErsatzHallo @wendytseng ,
Da ist ein Probe mit Ersatz-Add-In Dies kann zu einer Überabtastung führen, jedoch nicht zu einer Schichtung in Bezug auf eine andere Variable.
@julianisch
Betreff: Zufallsstichprobe mit ErsatzHallo Wendy,
Sie sind sich nicht sicher, ob Ihr Kunde bereit ist, Skripte zu erstellen, aber die Idee kann problemlos erweitert werden, um eine kategoriale Variable zu schichten. Das kurze Skript unten führt dies für den Datensatz "Fahrzeugdaten" und die Spalte "Typ" aus. Es werden 1000 Zeilen angefordert, wobei die Originaltabelle 116 enthält. Beachten Sie, dass 1002 Zeilen zurückgegeben werden, da die Stichprobengröße jeder Kategorie auf die nächste Ganzzahl aufgerundet wird.
Dies ist nicht der schnellste Weg, dies zu tun, aber es ist relativ einfach zu verstehen. Vielleicht kann Ihr Kunde das Skript erstellen, was er möchte, wenn Sie dies durchsprechen?
Prost,
Brady
Names Default To Here( 1 );
dt = Open( "$Sample_Data\Car Physical Data.jmp" );
stratCol = Column( dt, "Type" );
nSample = 1000;
//determine the (over)sampling ratio
sRatio = nSample / N Row( dt );
//get a list of the stratification column's values
categories = ((Associative Array( stratCol << get values ) << get keys));
// initialize the master row matrix
rowMat = [];
//For each category
For( i = 1, i <= N Items( categories ), i++,
// Get the table rows belonging to this category
catRows = dt << getrowswhere( dt:stratCol == categories[i] );
// Determine how many rows belong to this category
catN = N Items( catRows );
// Oversample these row values by the specified ratio, and append them to the master row list
rowMat |/= catRows[As List( J( Ceiling( catN * sRatio ), 1, Random Integer( 1, catN ) ) )];
);
// Subset the data table, using the final master row list
dt << subset( rows( As List( rowMat ) ) );
Betreff: Zufallsstichprobe mit ErsatzFür Oversampling gibt es auch dieses Add-In: Add-In für geschichtete Datenpartitionierung (mit Ausgleichsoptionen)
In JMP 15 nicht getestet ...
Betreff: Zufallsstichprobe mit ErsatzDas ist der, den wir für den Prof an der UC Denver spezifiziert haben, richtig? Ich habe den Code durchsucht und konnte mir keine Möglichkeit vorstellen, ihn zum Laufen zu bringen, ohne in Train / Test / Validate einzusteigen.