Corrélation des ensembles de données avec des horodatages non identiquesJe suis nouveau chez JMP. Je suis sûr que mon problème est assez courant, mais je ne connaissais pas les termes appropriés pour chercher de l'aide.
J'ai couru une expérience où les données ont été collectées manuellement à des moments aléatoires.
Afin de mieux illustrer le type de données dont je dispose, j'ai créé un exemple de tableau ci-dessous. Supposons que je vois un problème avec le résultat 2, donc je veux voir s’il existe une corrélation entre le résultat 2 et le résultat 1 et également entre le résultat 2 et le résultat 3.
Les chiffres sont complètement composés, mais vous verrez que, en général, les données ne sont pas collectées au même moment (mais parfois, elles le sont). Les ensembles de données ne sont pas de la même taille.
| Temps | Résultat 1 | Résultat 2 | Résultat 3 |
01:00 | 2000 | | |
| 02:00 | 5200 | | |
| 03h14 | 5000 | | |
| 04:00 | 5100 | | |
05:23 | 5200 | | |
| 06h00 | 5300 | | |
| 07:52 | 5000 | | |
| 01h15 | | 12 | |
| 04:23 | | 16 | |
| 06h00 | | 22 | |
| 01h17 | | | 345 |
| 02:34 | | | 345 |
| 02h50 | | | 347 |
| 04:23 | | | 347 |
| 05:53 | | | 342 |
| 08h23 | | | 235 |
| | | | |
J'ai été capable de convertir l'heure en une heure car mes données s'étendent sur plusieurs jours (non illustrés dans le tableau d'exemple). Je ne sais pas quelle est la meilleure façon de s'y prendre. Si mes jeux de données étaient petits, j'essaierais de faire correspondre les résultats 2 et 3 avec le jeu de données le plus proche du résultat 1. Dites, match 1:00 du résultat 1 et 1:15 du résultat 2 et 1:17 du résultat 3.
Mais j'ai beaucoup de données (quelques milliers de points de données ou plus). Je veux juste avoir une idée globale de ce qui est corrélé et de ce qui ne l'est pas. Je n'ai pas besoin de conserver les données dans leur format d'origine et je n'ai pas besoin de perdre mon temps devant de petites différences (par conséquent, ok pour la corrélation 1:00 à 1:15 à 1:17). Je dois juste être capable de parcourir beaucoup de variables différentes et de déterminer ... oui il y a une corrélation, ou non il n'y en a pas.
Je vous remercie!
Re: Corrélation des ensembles de données avec des horodatages non identiquesMerci beaucoup!Re: Corrélation des ensembles de données avec des horodatages non identiquesVoici un exemple simple d'une façon de résoudre la question que vous avez posée
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 )
);
La documentation sur la méthode et les fonctions se trouve dans le Guide de script et Index de script
Aide ==> Livres ==> Guide de script
Aide ==> Index de script
Re: Corrélation des ensembles de données avec des horodatages non identiquesC'est super génial. C'est exactement ce dont j'avais besoin. Merci beaucoup.
J'ai encore une question ... pour que le script crée le tableau récapitulatif, je peux saisir les noms de colonne (par exemple, "Résultat 2") si je ne dispose que de quelques colonnes. Que dois-je faire si j'ai 100 colonnes avec différents noms qui doivent être fusionnées dans la table de données?
Je vous remercie!Re: Corrélation des ensembles de données avec des horodatages non identiquesPour "faire correspondre" les données, il doit exister un contexte pour la correspondance. D'après votre description, il semblait que vous vouliez faire correspondre à l'heure la plus proche. Si tel était le cas, vous pourriez créer une nouvelle colonne, je l'appellerai Heure arrondie.
Round( :Time / (60 * 60), 0 ) * (60 * 60)
Vous pouvez ensuite utiliser le tableau récapitulatif pour vos résultats, en demandant la moyenne, ou min ou max, puisqu’il ne devrait y en avoir qu’un,
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 )
)
Cependant, étant donné vos données composées, cela poserait un problème. Pour le résultat 3, vous avez une lecture à 2:34, qui arrondirait à 3:00 et une autre à 2:50 qui arrondirait à 3:00. Que se passerait-il ici? Comment régleriez-vous ce problème?
Si cela prend plus de logique, telle que "si 2 résultats à la même heure arrondie, assigne la plus proche de cette heure et si aucun assigné à l'heure précédente, assigne l'autre à l'heure précédente" et des règles similaires, alors un script être requis.