Namen sind standardmäßig hier(1); //Wählen Sie Juristik , entweder 'Vereinigte Staaten' oder einen Bundesstaat, und stimmen Sie mit einem Wert in dieser Spalte in CSV-Dateien überein. Gerichtsbarkeitsfilter = "Vereinigte Staaten"; //Gerichtsbarkeitsfilter = "Illinois"; //Exportieren von Daten in csv-Dateien von den folgenden Websites: //
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("Open final file (Weekly counts of deaths by states )", "$Downloads"), column( New Column( "Jurisdiction of Occurrence", Character, "Nominal" ), New Column( "MMWR Year", Numeric, "Continuous", Format( "Best", 12 ) ) , Neue Spalte( "MMWR Woche", Numerisch, "Fortlaufend", Format( "Best", 12 ) ), Neue Spalte( "Wochenende", Numerisch, "Fortlaufend", Format( "m/d/y", 10 ), Eingabeformat( "m/d/y") ), Neue Spalte( "Alle Ursachen", Numerisch, "Kontinuierlich", Format( "Beste", 12 ) ), Neue Spalte( "Natürliche Ursache", Numerisch, "Kontinuierlich", Format ( "Best", 12 ) ), Neue Spalte ( "Septikämie (A40-A41)", Numerisch, "Kontinuierlich", Format ( "Best", 12 ) ), Neue Spalte ( "Maligne Neoplasmen (C00 .) -C97)", Numerisch, "Kontinuierlich", Format( "Best", 12) ), Neue Spalte( "Diabetes mellit us (E10-E14)", Numerisch, "Continuous", Format( "Best", 12 ) ), New Column( "Alzheimer (G30)", Numeric, "Continuous", Format( "Best", 12 ) ) , Neue Kolumne( "Influenza und Lungenentzündung (J10-J18)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Kolumne( "Chronische Erkrankungen der unteren Atemwege (J40-J47)", Numerisch, "Kontinuierlich ", Format( "Best", 12 ) ), Neue Spalte( "Andere Erkrankungen des Atmungssystems (J00-J06,J30-J39,J67,J70-J98)", Numerisch, "Kontinuierlich", Format( "Beste", 12 ) ), Neue Spalte ( "Nephritis, nephrotisches Syndrom und Nephrose (N00-N07, N17-N19, N25-N27)", Numerisch, "Kontinuierlich", Format ( "Best", 12 ) ), Neue Spalte ( "Symptome , Anzeichen und auffällige klinische und Laborbefunde, anderweitig nicht klassifiziert (R00-R99)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Herzkrankheiten (I00-I09,I11,I13 ,I20-I51)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Zerebrovaskuläre Erkrankungen (I60-I69)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "flag_allcaus e", Character, "Nominal" ), Neue Spalte( "flag_natcause", Character, "Nominal" ), Neue Spalte( "flag_sept", Character, "Nominal" ), Neue Spalte( "flag_neopl", Character, "Nominal" ), Neue Spalte( "flag_diab", Character, "Nominal" ), Neue Spalte( "flag_alz", Character, "Nominal" ), Neue Spalte( "flag_inflpn", Character, "Nominal" ), Neue Spalte( "flag_clrd" , Character, "Nominal" ), Neue Spalte( "flag_otherresp", Character, "Nominal" ), Neue Spalte( "flag_nephr", Character, "Nominal" ), Neue Spalte( "flag_otherunk", Character, "Nominal" ), Neue Spalte( "flag_hd", Zeichen, "Nominal" ), Neue Spalte( "flag_stroke", Character, "Nominal" ) ), Importeinstellungen( Zeilenende( CRLF, CR, LF ), Ende des Feldes( Komma, CSV ( 1 ) ), Anführungszeichen entfernen ( 1 ), Apostroph als Anführungszeichen verwenden ( 0 ), Ländereinstellungen verwenden ( 0 ), Ganze Datei scannen ( 1 ), Leere Spalten als numerisch behandeln ( 0 ), CompressNumericColumns( 0 ), CompressCharacterColumns( 0 ), CompressAllowListCheck( 0 ), Labels( 1 ), Spaltennamen Start( 1 ), Datenstarts( 2 ), Zu lesende Zeilen ( "Alle" ), Jahresregel ("20xx" ) ); dtProv = Open( Pick File("Open provisorische Datei (wöchentliche vorläufige Anzahl der Todesfälle)", "$Downloads"), column( New Column( "Data As Of", Numeric, "Continuous", Format( "m/d/ y", 10 ), Eingabeformat( "m/d/y") ), Neue Spalte( "Gerichtsstand des Auftretens", Zeichen, "Nominal" ), Neue Spalte( "MMWR Jahr", Numerisch, "Fortlaufend", Format ( "Best", 12 ) ), Neue Spalte( "MMWR Woche", Numerisch, "Fortlaufend", Format( "Best", 12 ) ), Neue Spalte( "Wochenende", Numerisch, "Fortlaufend", Format( "yyyy-mm-dd", 10 ), Eingabeformat( "yyyy-mm-dd" ) ), Neue Spalte( "Alle Ursachen", Numerisch, "Fortlaufend", Format( "Best", 12 ) ), Neue Spalte ( "Natürliche Ursache", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Septikämie (A40-A41)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Maligne Neoplasien (C00-C97)", Numerisch, "Kontinuierlich", Format( "Best", 12) ), Neue Spalte( "Diabetes mellitus (E10-E14)", Numerisch, "Kontinuierlich", Format( "Best", 12) ), Neue Kolumne ("Alzheimer-Krankheit (G30)", Numerisch, "Co ntinuous", Format( "Best", 12 ) ), New Column( "Influenza and Pneumonia (J09-J18)", Numeric, "Continuous", Format( "Best", 12 ) ), New Column( "Chronische untere Atemwege Krankheiten (J40-J47)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Andere Erkrankungen des Atmungssystems (J00-J06,J30-J39,J67,J70-J98)", Numerisch, "Kontinuierlich", Format( "Best", 12) ), Neue Spalte( "Nephritis, nephrotisches Syndrom und Nephrose (N00-N07,N17-N19,N25-N27)", Numerisch, "Kontinuierlich", Format( " Am besten", 12 ) ), Neue Spalte( "Symptome, Anzeichen und auffällige klinische und Laborbefunde, anderweitig nicht klassifiziert (R00-R99)", Numerisch, "Kontinuierlich", Format( "Am besten", 12 ) ), Neue Spalte( "Herzkrankheiten (I00-I09,I11,I13,I20-I51)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "Zerebrovaskuläre Erkrankungen (I60-I69)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "COVID-19 (U071, Mehrere Todesursachen)", Numerisch, "Kontinuierlich", Format( "Best", 12 ) ), Neue Spalte( "COVID-19 (U071, Underl .) Todesursache)", Numerisch, "Fortlaufend", Format( "Best", 12 ) ), Neue Spalte( "flag_allcause", Character, "Nominal" ), New Column( "flag_natcause", Character, "Nominal" ) , Neue Spalte( "flag_sept", Character, "Nominal" ), Neue Spalte( "flag_neopl", Character, "Nominal" ), Neue Spalte( "flag_diab", Character, "Nominal" ), Neue Spalte( "flag_alz", Character, "Nominal" ), Neue Spalte( "flag_inflpn", Character, "Nominal" ), Neue Spalte( "flag_clrd", Character, "Nominal" ), Neue Spalte( "flag_otherresp", Character, "Nominal" ), Neu Column( "flag_nephr", Character, "Nominal" ), New Column( "flag_otherunk", Character, "Nominal" ), New Column( "flag_hd", Character, "Nominal" ), New Column( "flag_stroke", Character, "Nominal" ), Neue Spalte( "flag_cov19mcod", Character, "Nominal" ), Neue Spalte( "flag_cov19ucod", Character, "Nominal" ) ), Importeinstellungen( End Of Line( CRLF, CR, LF ), End Of Feld ( Komma, CSV ( 1 ) ), Anführungszeichen entfernen ( 1 ), Apostroph als Anführungszeichen verwenden ( 0 ), Ländereinstellungen verwenden ( 0 ) , Ganze Datei scannen( 1 ), Leere Spalten als numerisch behandeln( 0 ), CompressNumericColumns( 0 ), CompressCharacterColumns( 0 ), CompressAllowListCheck( 0 ), Labels( 1 ), Spaltennamen Start( 1 ), Datenstarts( 2 ), Zu lesende Zeilen ( "Alle" ), Jahresregel ( "20xx" ) ); dtProv:"Alle Ursachen"n << Setze Name("Alle Ursachen"); dtFinal:"Alle Ursachen"n << Set Name("Alle Ursachen"); dtAll = dtFinal << Verketten ( dtProv, Quellspalte erstellen ); dtAll << Select Where(:Jurisdiction of Occurrence == Jurisdiction Filter ); dtSub = dtAll << Teilmenge( Ausgewählte Zeilen( 1 ), Nur ausgewählte Spalten( 0 ) ); dtSub << Select where( :Wochenende > Datum dmy( 1,3,2020) ); //Neue Daten ausblenden dtSub << Hide and Exclude(1); ts = dtSub << Zeitreihen( X( :Wochenende ), Y( :Alle Ursachen ), Autokorrelationsverzögerungen( 52 ), Prognosezeiträume( 52 ), Saisonale ARIMA( 0, 0, 0, 1, 1, 1, 52, Vorhersageintervall( 0.99 ) ), SendToReport( Dispatch( {}, "Time Series Basic Diagnostics", OutlineBox, {Close( 1 )} ), Dispatch( {"Modellvergleich"}, "", ScrollBox, {Hintergrundfarbe ( 117 )} ) ); dtPred = (((ts << XPath("//OutlineBox[
@helpKey='ARIMA Model']"))[1]) << Skriptfähiges Objekt abrufen) << Vorhersageformel speichern; dtJoined = dtSub << Join( With( dtPred ), Zusammenführen von Spalten mit gleichem Namen, nach Zeilennummer ); dtJoined << New Column("Excess v Expected", Numeric, "Continuous", Format("Best", 12), Formula(:All Cause - :Predicted All Cause), Set Display Width(100)); dtJoined << New Column("Cumulative[Excess v Expected]", Numeric, "Continuous", Format("Best", 12), Formula(Col Cumulative Sum(:Excess v Expected)), Set Display Width(173)) ; letzte Zeile mit Istwerten = max(dtJoined << Hole Zeilen where( !Is Missing( :All Cause) ))-1; letztes Datum mit Ist-Werten = dtJoined:Week Ending Date[letzte Zeile mit Ist-Werten]; dtJoined << Graph Builder( Size( 1174, 786 ), Show Control Panel( 0 ), Show Subtitle( 1 ), Variables( X( :Wochenenddatum ), Y( :"Kumulativ[Excess v Expected]"n ), Y( :Überschuss v erwartet ), Y( :Alle Ursachen ), Y( :Vorhergesagt alle Ursachen, Position( 3 ) ), Y( :"Obere CL (0,99) Alle Ursachen"n, Position( 3 ) ), Y( :"Lower CL (0.99) All Cause"n, Position( 3 ) ) ), Relative Sizes( "Y", [229 204 387] ), Elements( Position( 1, 1 ), Points( X, Y, Legend( 18 ) ) ), Elemente ( Position ( 1, 2 ), Punkte ( X, Y, Legende ( 20 ) ), Fläche ( X, Y, Legende ( 22 ), Intervallstil ( "Band" ) ) ), Elemente ( Position ( 1, 3 ), Punkte ( X, Y ( 1 ), Legende ( 13 ) ), Linie ( X, Y ( 2 ), Y ( 3 ), Y ( 4 ), Legende ( 15 ) ), Lokaler Datenfilter ( Filter hinzufügen( Spalten( :Wochenende ), Wo( :Wochenende >= 3471638400 & :Wochenende <= letztes Datum mit Istwerten ) ) ), SendToReport( Dispatch( {}, "Wochenende", ScaleBox , {Min( 3462203520 ), Max(letztes Datum mit Istwerten + in Tagen(7)), Intervall("Jahr"), Inc( 1 ), Minor Ticks(0 ), Ref-Zeile hinzufügen (letztes Datum mit Istwerten, "Solid", "Black", Format( Letztes Datum mit Istwerten, "ddMonyyyy"), 1 ), Label Row( Show Major Grid( 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 ) , Minor Ticks( 1 ), Add Ref Line( 0, "Solid", "Black", "", 1 ), Label Row( {Show Major Grid( 1 ), Show Minor Grid( 1 )} )} ), Versand ( {}, "All Cause", ScaleBox, {Min( 0 ), //Max( 90470.7642581624 ), Inc( 10000 ), Minor Ticks( 4 ), Label Row( {Show Major Grid( 1 ), Show Minor Grid( 1 )} )} ), Dispatch( {}, "400", ScaleBox, {Legend Model( 22, Properties( 0, {Füllfarbe( 20 ), Transparenz( 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, {Linienfarbe( 32 )}, Element-ID( "Vorhergesagte alle Ursachen", 1 ) ), Eigenschaften( 1, {Linienfarbe( 70)}, Element-ID( "Obere CL (0.99) Alle Ursachen", 1 ) ), Properties( 2, {Line Color( 70 )}, Item ID( "Lower CL (0.99) All Cause", 1 ) ) )} ), Dispatch( {}, "graph title", TextEditBox, {Set Text( Gerichtsbarkeitsfilter || " Tatsächliche Todesfälle vs. erwartete Todesfälle (überschüssige Todesfälle)" )} ), Dispatch( {}, "graph 1 title", TextEditBox, {Set Text( "Quelle:
https://data.cdc.gov/NCHS/Weekly-Counts -of-Deaths-by-State-and-Select-Causes/3yf8-kanr und
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( {}, "Y 1 title", TextEditBox, {Set Text( "Excess v Expected\!NDeaths per Month" )} ), Dispatch( {}, "Y 2 title", TextEditBox, {Set Text( "Todesfälle pro Monat" )} ), Versand( {}, "400", LegendBox, {Legend Position( {18, [0], 20, [1], 22, [6, -3], 13, [2], 15, [3, 4, 5]} )} ), Dispatch( {}, "Graph Builder", FrameBox(3), {Grafikskript hinzufügen( 3, Beschreibung( "Skript" ), dt = Aktuell Data Table(); yMatrix = (dtJoined:All Cause << Werte abrufen)[54::letzte Zeile mit Istwerten] |/ Matrix( Reverse( As List( (dtJoined:Predicted All Cause << Werte abrufen)[54: :letzte Zeile mit Istwerten] ) ) ); xMatrix = (dtJoined:Wochenende << Werte abrufen)[54::letzte Zeile mit Istwerten] |/ Matrix( Reverse( As List( (dtJoined:Wochenende << Werte abrufen)[54::letzte Zeile mit Istwerten ] ) ) ); Füllfarbe ( "Mittel Dunkelgrün"); Transparenz (0,5); Polygon(xMatrix, yMatrix); ), Rasterlinienreihenfolge ( 1 ), Referenzlinienreihenfolge ( 3 )} ) ); dtFinal << Fenster schließen; dtProv << Fenster schließen; dtAll << Fenster schließen; dtSub << Fenster schließen; dtPred << Fenster schließen;