Korrelieren von Datensätzen mit nicht identischen ZeitstempelnIch bin ganz neu bei JMP. Ich bin mir sicher, dass mein Problem weit verbreitet ist, aber ich wusste nicht die richtigen Begriffe, um nach Hilfe zu suchen.
Ich führte ein Experiment durch, bei dem die Daten manuell zu zufälligen Zeitpunkten erfasst wurden.
Um die Art der Daten, die ich habe, besser zu veranschaulichen, habe ich unten eine Beispieltabelle erstellt. Nehmen wir an, ich sehe ein Problem mit Ergebnis 2, also möchte ich sehen, ob eine Korrelation zwischen Ergebnis 2 und Ergebnis 1 und auch zwischen Ergebnis 2 und Ergebnis 3 besteht.
Die Zahlen sind vollständig zusammengesetzt, aber Sie werden feststellen, dass die Daten im Allgemeinen nicht zu denselben Zeitpunkten erfasst werden (manchmal jedoch auch). Die Datensätze haben nicht die gleiche Größe.
| Zeit | Ergebnis 1 | Ergebnis 2 | Ergebnis 3 |
01:00 | 2000 | | |
| 02:00 | 5200 | | |
| 03:14 | 5000 | | |
| 04:00 | 5100 | | |
05:23 | 5200 | | |
| 06:00 | 5300 | | |
| 07:52 | 5000 | | |
| 01.15 Uhr | | 12 | |
| 04:23 | | 16 | |
| 06:00 | | 22 | |
| 01:17 | | | 345 |
| 02:34 | | | 345 |
| 02:50 | | | 347 |
| 04:23 | | | 347 |
| 05:53 | | | 342 |
| 08:23 | | | 235 |
| | | | |
Ich konnte die Uhrzeit in eine Datumszeit umwandeln, da meine Daten mehrere Tage umfassen (nicht in der Beispieltabelle gezeigt). Ich weiß nicht, wie ich das am besten machen kann. Wenn meine Datensätze klein wären, würde ich versuchen, die Ergebnisse 2 und 3 mit dem nächsten Datensatz von Ergebnis 1 abzugleichen. Angenommen, 1:00 von Ergebnis 1 und 1:15 von Ergebnis 2 und 1:17 von Ergebnis 3.
Aber ich habe viele Daten (einige tausend Datenpunkte oder so). Ich muss nur einen Überblick darüber bekommen, was korreliert und was nicht. Ich muss die Daten nicht in ihrem ursprünglichen Format behalten, und ich muss nicht über kleine Unterschiede agnoisieren (daher ok, Korrelation 1:00 mit 1:15 mit 1:17). Ich muss nur in der Lage sein, viele verschiedene Variablen durchzugehen und zu bestimmen, ... Ja, es gibt eine Korrelation, oder Nein, es gibt keine.
Vielen Dank!
Betreff: Korrelieren von Datensätzen mit nicht identischen ZeitstempelnIch danke dir sehr!Betreff: Korrelieren von Datensätzen mit nicht identischen ZeitstempelnHier ist ein einfaches Beispiel für eine Möglichkeit, die von Ihnen gestellte Frage zu lösen
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colNamesList = dt << get column names( numeric, continuous );
dtSum = dt << Summary(
Mean( Eval( colNamesList ) ),
Freq( "None" ),
Weight( "None" ),
Link to original data table( 0 )
);
Dokumentation zu den Methoden und Funktionen finden Sie im Scripting Guide und im Scripting Index
Hilfe ==> Bücher ==> Anleitung zur Skripterstellung
Hilfe ==> Skriptindex
Betreff: Korrelieren von Datensätzen mit nicht identischen ZeitstempelnDas ist super geil. Es ist genau das, was ich brauchte. Ich danke dir sehr.
Ich habe noch eine Frage ... Damit das Skript die Übersichtstabelle erstellt, kann ich die Spaltennamen eingeben (z. B. "Ergebnis 2"), wenn ich nur wenige Spalten habe. Was mache ich, wenn ich 100 Spalten mit verschiedenen Namen habe, die in die Datentabelle eingefügt werden müssen?
Vielen Dank!Betreff: Korrelieren von Datensätzen mit nicht identischen ZeitstempelnUm Daten abzugleichen, sollte ein Zusammenhang für den Abgleich vorhanden sein. Ihrer Beschreibung nach schien es so, als wollten Sie die nächste Stunde erreichen. Wenn dies der Fall wäre, könnten Sie eine neue Spalte erstellen. Ich nenne es Rounded Hour.
Round( :Time / (60 * 60), 0 ) * (60 * 60)
Dann könnten Sie Table Summary für Ihre Ergebnisse verwenden und den Mittelwert oder Min oder Max anfordern, da es nur einen geben sollte.
Data Table( "Example" ) << Summary(
Group( :Round Hour ),
Mean( :Result 1 ),
Mean( :Result 2 ),
Mean( :Result 3 ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column" ),
Link to original data table( 0 )
)
Aufgrund Ihrer erfassten Daten wäre dies jedoch ein Problem. Für Ergebnis 3 haben Sie eine Lesung um 2:34 Uhr, die um 3:00 Uhr und eine weitere um 2:50 Uhr, die um 3:00 Uhr endet. Was würde hier passieren? Wie würden Sie dieses Problem lösen?
Wenn mehr Logik erforderlich ist, z. B. "Wenn zwei Ergebnisse zur gleichen gerundeten Stunde erzielt werden, weisen Sie der nächsten Stunde die nächste zu, und wenn keiner der vorherigen Stunde zugewiesen wurde, weisen Sie der anderen Stunde die vorherige Stunde zu" und ähnlichen Regeln, dann ein Skript erforderlich sein.