Les noms par défaut sont ici (1) ; //Choisissez Juristiction , soit « États-Unis » ou un nom d'État, correspond à une valeur dans cette colonne dans les fichiers csv. Filtre de juridiction = « États-Unis » ; //Filtre de juridiction = "Illinois"; //Exporter les données vers des fichiers csv à partir des sites ci-dessous : //
https://data.cdc.gov/NCHS/Weekly-Counts-of-Deaths-by-State-and-Select-Causes/3yf8-kanr // https

/data.cdc.gov/NCHS/Weekly-Provisional-Counts-of-Deaths-by-State-and-S/muzy-jte6 dtFinal = Open( pick file ("Ouvrir le fichier final (nombre hebdomadaire de décès par états )", "$Téléchargements"), colonnes( Nouvelle colonne( "Juridiction d'occurrence", Caractère, "Nominal" ), Nouvelle colonne( "Année MMWR", Numérique, "Continu", Format( "Meilleur", 12 ) ) , Nouvelle colonne( "Semaine MMWR", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Date de fin de semaine", Numérique, "Continu", Format( "m/j/a", 10 ), Format d'entrée( "m/d/y" ) ), Nouvelle colonne( "Toutes causes", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Cause naturelle", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Septicémie (A40-A41)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Tumeurs malignes (C00 -C97)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Diabète sucré us (E10-E14)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladie d'Alzheimer (G30)", Numérique, "Continu", Format( "Meilleur", 12 ) ) , Nouvelle colonne( "Grippe et pneumonie (J10-J18)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladies chroniques des voies respiratoires inférieures (J40-J47)", Numérique, "Continu ", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Autres maladies du système respiratoire (J00-J06,J30-J39,J67,J70-J98)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Néphrite, syndrome néphrotique et néphrose (N00-N07,N17-N19,N25-N27)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Symptômes , signes et résultats anormaux cliniques et de laboratoire, non classés ailleurs (R00-R99)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladies cardiaques (I00-I09,I11,I13) ,I20-I51)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladies cérébrovasculaires (I60-I69)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "flag_allcaus e", Caractère, "Nominal" ), Nouvelle colonne( "flag_natcause", Caractère, "Nominal" ), Nouvelle colonne( "flag_sept", Caractère, "Nominal" ), Nouvelle colonne( "flag_neopl", Caractère, "Nominal" ), Nouvelle colonne( "flag_diab", Caractère, "Nominal" ), Nouvelle colonne( "flag_alz", Caractère, "Nominal" ), Nouvelle colonne( "flag_inflpn", Caractère, "Nominal" ), Nouvelle colonne( "flag_clrd" , Caractère, "Nominal" ), Nouvelle colonne( "flag_otherresp", Caractère, "Nominal" ), Nouvelle colonne( "flag_nephr", Caractère, "Nominal" ), Nouvelle colonne( "flag_otherunk", Caractère, "Nominal" ), Nouvelle colonne( "flag_hd", Caractère, "Nominal" ), Nouvelle colonne( "flag_stroke", Caractère, "Nominal" ) ), Paramètres d'importation ( Fin de ligne ( CRLF, CR, LF ), Fin de champ ( Virgule, CSV ( 1 ) ), Supprimer les guillemets ( 1 ), Utiliser l'apostrophe comme guillemet ( 0 ), Utiliser les paramètres régionaux ( 0 ), Analyser le fichier entier ( 1 ), Traiter les colonnes vides comme numériques ( 0 ), CompressNumericColumns ( 0 ), CompressCharacterColumns ( 0 ), CompressAllowListCheck( 0 ), Labels( 1 ), Début des noms de colonnes( 1 ), Début des données( 2 ), Lignes à lire( "Tous" ), Règle de l'année( "20xx" ) ) ); dtProv = Open( Pick File("Ouvrir le fichier provisoire (nombre provisoire hebdomadaire de décès)", "$Téléchargements"), colonnes( Nouvelle colonne( "Données à partir du", Numérique, "Continu", Format( "m/d/ y", 10 ), Format d'entrée( "m/d/y" ) ), Nouvelle colonne( "Juridiction of Occurrence", Caractère, "Nominal" ), Nouvelle colonne( "MMWR Year", Numérique, "Continu", Format ( "Meilleur", 12 ) ), Nouvelle colonne( "Semaine MMWR", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Date de fin de semaine", Numérique, "Continu", Format( "aaaa-mm-jj", 10 ), Format d'entrée( "aaaa-mm-jj" ) ), Nouvelle colonne( "Toutes causes", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne ( "Cause naturelle", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Septicémie (A40-A41)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Tumeurs malignes (C00-C97)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( " Diabète sucré (E10-E14)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladie d'Alzheimer (G30)", Numérique, "Co ntinuous", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Grippe et pneumonie (J09-J18)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Chronique des voies respiratoires inférieures maladies (J40-J47)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Autres maladies du système respiratoire (J00-J06,J30-J39,J67,J70-J98)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Néphrite, syndrome néphrotique et néphrose (N00-N07,N17-N19,N25-N27)", Numérique, "Continu", Format( " Meilleur", 12 ) ), Nouvelle colonne( "Symptômes, signes et résultats anormaux cliniques et de laboratoire, non classés ailleurs (R00-R99)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladies cardiaques (I00-I09,I11,I13,I20-I51)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "Maladies cérébrovasculaires (I60-I69)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "COVID-19 (U071, Cause de décès multiple)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "COVID-19 (U071, Underl ying Cause of Death)", Numérique, "Continu", Format( "Meilleur", 12 ) ), Nouvelle colonne( "flag_allcause", Caractère, "Nominal" ), Nouvelle colonne( "flag_natcause", Caractère, "Nominal" ) , Nouvelle colonne( "flag_sept", Caractère, "Nominal" ), Nouvelle colonne( "flag_neopl", Caractère, "Nominal" ), Nouvelle colonne( "flag_diab", Caractère, "Nominal" ), Nouvelle colonne( "flag_alz", Caractère, "Nominal" ), Nouvelle colonne( "flag_inflpn", Caractère, "Nominal" ), Nouvelle colonne( "flag_clrd", Caractère, "Nominal" ), Nouvelle colonne( "flag_otherresp", Caractère, "Nominal" ), Nouveau Colonne( "flag_nephr", Caractère, "Nominal" ), Nouvelle colonne( "flag_otherunk", Caractère, "Nominal" ), Nouvelle colonne( "flag_hd", Caractère, "Nominal" ), Nouvelle colonne( "flag_stroke", Caractère, "Nominal" ), Nouvelle colonne( "flag_cov19mcod", Caractère, "Nominal" ), Nouvelle colonne( "flag_cov19ucod", Caractère, "Nominal" ) ), Paramètres d'importation( Fin de ligne( CRLF, CR, LF ), Fin de Champ( Virgule, CSV( 1 ) ), Supprimer les guillemets( 1 ), Utiliser l'apostrophe comme guillemet( 0 ), Utiliser les paramètres régionaux( 0 ) , Scan Whole File( 1 ), Traiter les colonnes vides comme numérique( 0 ), CompressNumericColumns( 0 ), CompressCharacterColumns( 0 ), CompressAllowListCheck( 0 ), Labels( 1 ), Column Names Start( 1 ), Data Starts( 2 ), Lignes à lire( "Tous" ), Règle de l'année( "20xx" ) ) ); dtProv : "Toute cause"n << Définir le nom("Toute cause"); dtFinal:"Toute cause"n << Définir le nom("Toute cause"); dtAll = dtFinal << Concaténer( dtProv, Créer une colonne source ); dtAll << Sélectionnez Où(:Juridiction d'occurrence == Filtre de juridiction ); dtSub = dtAll << Sous-ensemble ( lignes sélectionnées ( 1 ), colonnes sélectionnées uniquement ( 0 ) ); dtSub << Sélectionnez où ( :Date de fin de semaine > date dmy( 1,3,2020) ); //Masquer les nouvelles données dtSub << Masquer et exclure (1) ; ts = dtSub << Séries temporelles( X( :Date de fin de semaine ), Y( :Toutes causes ), Délais d'autocorrélation( 52 ), Périodes de prévision( 52 ), ARIMA saisonnier( 0, 0, 0, 1, 1, 1, 52, Intervalle de prédiction (0.99 ) ), SendToReport( Dispatch( {}, "Diagnostics de base des séries temporelles", OutlineBox, {Close( 1 )} ), Dispatch( {"Comparaison de modèles"}, "", ScrollBox, {Couleur d'arrière-plan ( 117 )} ) ) ); dtPred = (((ts << XPath("//OutlineBox[
@helpKey='ARIMA Model']"))[1]) << Obtenir un objet scriptable) << Enregistrer la formule de prédiction ; dtJoined = dtSub << Join( With( dtPred ), Fusionner les colonnes de même nom, Par numéro de ligne ); dtJoined << Nouvelle colonne("Excès v attendu", numérique, "Continu", Format("Meilleur", 12), Formule(:Toute cause - :Prédite toute cause), Définir la largeur d'affichage (100)); dtJoined << Nouvelle colonne("Cumulatif[Excès v Attendu]", Numérique, "Continu", Format("Meilleur", 12), Formule(Col Cumulative Sum(:Excess v Attendu)), Définir la largeur d'affichage (173)) ; dernière ligne avec actuals = max(dtJoined << Récupère les lignes où( !Is Missing( :All Cause ) ))-1; dernière date avec les chiffres réels = dtJoined:Week Ending Date [dernière ligne avec les chiffres réels] ; dtJoined << Graph Builder( Size( 1174, 786 ), Show Control Panel( 0 ), Show Subtitle( 1 ), Variables( X( :Week Ending Date ), Y( :"Cumulative[Excess v Expected]"n ), Y( :Excès v attendu ), Y( :Toute cause ), Y( :Toute cause prédite, Position( 3 ) ), Y( :"Upper CL (0,99)Toute cause"n, Position( 3 ) ), Y( :"Lower CL (0,99) toutes causes"n, Position( 3 ) ) ), Tailles relatives( "Y", [229 204 387] ), Elements( Position( 1, 1 ), Points( X, Y, Legend( 18 ) ) ), Éléments( Position( 1, 2 ), Points( X, Y, Légende( 20 ) ), Aire( X, Y, Légende( 22 ), Style d'intervalle( "Bande" ) ) ), Éléments( Position ( 1, 3 ), Points( X, Y( 1 ), Légende( 13 ) ), Ligne( X, Y( 2 ), Y( 3 ), Y( 4 ), Légende( 15 ) ) ), Filtre de données local ( Ajouter un filtre( colonnes( :Date de fin de semaine ), Où( :Date de fin de semaine >= 3471638400 & :Date de fin de semaine <= dernière date avec les chiffres réels ) ) ), SendToReport( Dispatch( {}, "Date de fin de semaine", ScaleBox , {Min( 3462203520 ), Max( dernière date avec chiffres réels + en jours(7) ), Interval( "Année" ), Inc( 1 ), Minor Ticks( 0 ), Ajouter une ligne de référence( dernière date avec les chiffres réels, "Solide", "Noir", Format( dernière date avec les chiffres réels, "ddMonyyyy"), 1 ), Ligne d'étiquette( Afficher la grille principale( 1 ) )} ), Dispatch( { }, "Cumulative[Excess v Expected]", ScaleBox, {Min( 0 ), //Max( 819328.125380856 ), Inc( 200000 ), Minor Ticks( 1 ), Add Ref Line( 0, "Solid", "Black" , "", 1 ), Label Row( Show Major Grid( 1 ) )} ), Dispatch( {}, "Excess v Expected", ScaleBox, {Min( 0 ), //Max( 26451.6956907074 ), Inc( 10000 ) , Coches mineures( 1 ), Ajouter une ligne de référence( 0, "Solide", "Noir", "", 1 ), Ligne d'étiquette( {Afficher la grille principale( 1 ), Afficher la grille mineure( 1 )} )} ), Répartir ( {}, "All Cause", ScaleBox, {Min( 0 ), //Max( 90470.7642581624 ), Inc( 10000 ), Minor Ticks( 4 ), Label Row( {Afficher la grille principale( 1 ), Afficher la grille secondaire( 1 )} )} ), Dispatch( {}, "400", ScaleBox, {Legend Model( 22, Properties( 0, {Fill Color( 20 ), Transparency( 0.5 )}, Item ID( "Excess v Expected", 1 ) ) ), Legend Model( 13, Properties( 0, {Line Color( 21 )}, Item ID( "All Cause", 1 ) ) ), Legend Model( 15, Prope rties( 0, {Couleur de la ligne( 32 )}, ID de l'article( "Toute cause prévue", 1 ) ), Propriétés( 1, {Couleur de la ligne( 70 )}, ID de l'article( "Upper CL (0,99) Toutes les causes", 1 ) ), Properties( 2, {Line Color( 70 )}, Item ID( "Lower CL (0,99) All Cause", 1 ) ) )} ), Dispatch( {}, "graph title", TextEditBox, {Set Texte( Filtre de juridiction || " Décès réels contre Décès attendus (décès excessifs)" )} ), Dispatch( {}, "titre du graphique 1", TextEditBox, {Set Text( "Source :
https://data.cdc.gov/NCHS/Weekly-Counts -of-Deaths-by-State-and-Select-Causes/3yf8-kanr et
https://data.cdc.gov/NCHS/Weekly-Provisional-Counts-of-Deaths-by-State-and-S/muzy -jte6" )} ), Dispatch( {}, "X title", TextEditBox, {Set Text( "" )} ), Dispatch( {}, "Y title", TextEditBox, {Set Text( "Cumulative Excess Deaths" )} ), Dispatch( {}, "Titre Y 1", TextEditBox, {Set Text( "Excess v Expected\!NDeaths per Month" )} ), Dispatch( {}, "Titre Y 2", TextEditBox, {Set Text( "Décès par mois" )} ), Dispatch( {}, "400", LegendBox, {Legend Position( {18, [0], 20, [1], 22, [6, -3], 13, [2], 15, [3, 4, 5]} )} ), Dispatch( {}, "Graph Builder", FrameBox(3), {Add Graphics Script( 3, Description( "Script" ), dt = Current Table de données (); yMatrix = (dtJoined:All Cause << get values)[54::last row with actuals] |/ Matrix( Reverse( As List( (dtJoined:Predicted All Cause << get values)[54: :dernière ligne avec les chiffres réels] ) ) ); xMatrix = (dtJoined:Week Ending Date << obtenir les valeurs)[54::dernière ligne avec les chiffres réels] |/ Matrix( Reverse( As List( (dtJoined:Week Ending Date << obtenir les valeurs)[54::dernière ligne avec les chiffres réels ] ) ) ); Couleur de remplissage( "Vert foncé moyen" ); Transparence( 0,5 ); Polygon( xMatrice, yMatrice ); ), Ordre des lignes de la grille ( 1 ), Ordre des lignes de référence ( 3 )} ) ) ); dtFinal << Fermer la fenêtre ; dtProv << Fermer la fenêtre ; dtAll << Fermer la fenêtre; dtSub << Fermer la fenêtre ; dtPred << Fermer la fenêtre ;