<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich habe einige ziemlich große Wachstumsdatensätze, in denen ich die Wachstumsdaten beeinflussen möchte:
- Bestimmen Sie das maximale Wachstum für jeden Tag und speichern Sie die Datumszeit für das maximale Wachstum jedes Tages
- Führen Sie eine lineare Regression (bivariate (Y (Wachstum), X (Datum / Zeit), Fit-Linie) für jedes aufeinanderfolgende Paar von Datumszeiten durch, bei dem das maximale Wachstum bestimmt wurde. ZB regressieren Sie maximales Wachstum 1 und maximales Wachstum 2 nach Datumszeit 1 und Datumszeit 2, dann maximales Wachstum 2 und maximales Wachstum 3 nach Datumszeit 2 und Datumszeit 3 usw.
- Erstellen Sie eine neue Variable (adj_growth), die aus einer Formel erstellt wird, die die linearen Regressionsergebnisse verwendet, um das Wachstum für datetime zu berechnen, das sich zwischen dem aufeinander folgenden Paar von datetime befindet, zu dem das maximale Wachstum bestimmt wurde. Z.B, Wenn datetime> = datetime 1 & datetime <= datetime 2 ist, dann ist adj_growth = m + b * Wachstum, sonst datetime> = datetime 2 & datetime <= datetime 3, dann adj_growth = m + b * Wachstum, sonst ... ............
Ich konnte einige JSL schreiben (siehe unten), die Schritt 1 abschließt, aber ich werde aufgehört, wie man die Schritte 2 und 3 abschließt. Ich würde mich über Vorschläge zur Lösung dieser Probleme freuen. Vielen Dank im Voraus für Ihre Hilfe!
Protokoll löschen();
Namensvorgabe bis hier (1);
dt_growth = Neue Tabelle ("Wachstum",
Neue Spalte ("Datum & Uhrzeit")
Numerisch,
Kontinuierlich,
Format ("m / d / yh: m", 12),
Eingabeformat ("m / d / yh: m"),
Werte setzen (
[3225884400, 3225888000, 3225891600, 3225895200, 3225898800
3225902400, 3225906000, 3225909600, 3225913200, 3225916800
3225920400, 3225924000, 3225927600, 3225931200, 3225934800
3225938400, 3225942000, 3225945600, 3225949200, 3225952800
3225956400, 3225960000, 3225963600, 3225967200, 3225970800
3225974400, 3225978000, 3225981600, 3225985200, 3225988800
3225992400, 3225996000, 3225999600, 3226003200, 3226006800
3226010400, 3226014000, 3226017600, 3226021200, 3226024800
3226028400, 3226032000, 3226035600, 3226039200, 3226042800
3226046400, 3226050000, 3226053600, 3226057200, 3226060800
3226064400, 3226068000, 3226071600, 3226075200, 3226078800
3226082400, 3226086000, 3226089600, 3226093200, 3226096800
3226100400, 3226104000, 3226107600, 3226111200, 3226114800
3226118400, 3226122000, 3226125600, 3226129200, 3226132800
3226136400, 3226140000, 3226143600, 3226147200, 3226150800
3226154400, 3226158000, 3226161600, 3226165200, 3226168800
3226172400, 3226176000, 3226179600, 3226183200, 3226186800
3226190400, 3226194000, 3226197600, 3226201200, 3226204800
3226208400, 3226212000, 3226215600, 3226219200, 3226222800
3226226400, 3226230000, 3226233600, 3226237200, 3226240800
3226244400, 3226248000, 3226251600, 3226255200, 3226258800
3226262400, 3226266000, 3226269600, 3226273200, 3226276800
3226280400, 3226284000, 3226287600, 3226291200, 3226294800
3226298400, 3226302000, 3226305600, 3226309200, 3226312800
3226316400, 3226320000, 3226323600, 3226327200, 3226330800
3226334400, 3226338000, 3226341600, 3226345200, 3226348800
3226352400, 3226356000, 3226359600, 3226363200, 3226366800
3226370400, 3226374000, 3226377600, 3226381200, 3226384800
3226388400, 3226392000, 3226395600, 3226399200, 3226402800
3226406400, 3226410000, 3226413600, 3226417200, 3226420800
3226424400, 3226428000, 3226431600, 3226435200, 3226438800
3226442400, 3226446000, 3226449600, 3226453200, 3226456800
3226460400, 3226464000, 3226467600, 3226471200, 3226474800
3226478400, 3226482000, 3226485600, 3226489200, 3226492800
3226496400, 3226500000, 3226503600, 3226507200, 3226510800
3226514400, 3226518000, 3226521600, 3226525200, 3226528800
3226532400, 3226536000, 3226539600, 3226543200, 3226546800
3226550400, 3226554000, 3226557600, 3226561200, 3226564800
3226568400, 3226572000, 3226575600, 3226579200, 3226582800
3226586400, 3226590000, 3226593600, 3226597200, 3226600800
3226604400, 3226608000, 3226611600, 3226615200, 3226618800
3226622400, 3226626000, 3226629600, 3226633200, 3226636800
3226640400, 3226644000, 3226647600, 3226651200, 3226654800
3226658400, 3226662000, 3226665600, 3226669200, 3226672800
3226676400, 3226680000, 3226683600, 3226687200, 3226690800
3226694400, 3226698000, 3226701600, 3226705200, 3226708800
3226712400, 3226716000, 3226719600, 3226723200, 3226726800
3226730400, 3226734000, 3226737600, 3226741200, 3226744800
3226748400, 3226752000, 3226755600, 3226759200, 3226762800
3226766400, 3226770000, 3226773600, 3226777200, 3226780800
3226784400, 3226788000, 3226791600, 3226795200, 3226798800
3226802400, 3226806000, 3226809600, 3226813200, 3226816800
3226820400, 3226824000, 3226827600, 3226831200, 3226834800
3226838400, 3226842000, 3226845600, 3226849200, 3226852800
3226856400, 3226860000, 3226863600, 3226867200, 3226870800
3226874400, 3226878000, 3226881600, 3226885200, 3226888800
3226892400, 3226896000, 3226899600, 3226903200, 3226906800]
)
)
Neue Spalte ("Year", Numeric, Continuous, Format ("Best", 8), Formel (Year (: Name ("Date & Time"))), Lock (1)),
Neue Spalte ("Monat", numerisch, fortlaufend, Format ("Best", 8), Formel (Monat (: Name ("Datum & Uhrzeit"))), Sperre (1))
Neue Spalte ("Tag", Numerisch, Fortlaufend, Format ("Best", 8), Formel (Tag (: Name ("Datum & Uhrzeit"))), Sperre (1))
Neue Spalte ("Stunde", numerisch, fortlaufend, Format ("Best", 8), Formel (Stunde (: Name ("Datum & Uhrzeit"))), Sperre (1)),
Neue Spalte ("Datum", numerisch, fortlaufend, Format ("m / d / j", 10), Formel (Datum MDY (: Monat,: Tag,: Jahr)), Sperre (1)),
Neue Spalte ("Wachstum",
Numerisch,
Kontinuierlich,
Format ("Festes Dez", 12, 3),
Werte setzen (
[-0.00100011424000851, -0.000363872799278378, -0.000363871984284188,
-0.00100005824000851, -0.00227235992075627, -0.00418081408649503, -
0,00545309175689348, -0,00736156445270497, -0,00736136657166755, -
0,00545294517616856, -0,00672516584616703, -0,00354446026036948, -
0,00227219704017202, 0,00154456188025604, 0,00726960356524363,
0.00790566809993933, 0.0129946043300728, 0.0142672814031039,
0.0142680804082943, 0.0212680506560791, 0.021269003361861,
0.0219050687116747, 0.0212692891739123, 0.014270349583592,
0.0161791280461629, 0.0123615072003508, 0.014269902140721,
0,0104520647031608, -0,0022725075312535, -0,00418091710202046,
0,00663394656359483, 0.0123593477559727, 0.0212654783489747,
0,0288989636199062, 0,0346241368109538, 0,0435298706416388,
0,0734286369895607, 0,072790864489845, 0,0632482414590739,
0,063884648195645, 0,0740617924812754, 0,10524374653983,
0.105238560337556, 0.106520183190921, 0,095705821744203,
0,0721597475663495, 0,0823432919531381, 0,0829770846230983,
0,0944282992395635, 0,0918775750507814,.,.,.,.,.,.,.,.
.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.
.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.
,.,.,.,.,., 0,132598446121035, 0,142136100159265.
0,144047485365236, 0,141510082527217, 0,133243284004832,
0,136430823506921, 0,129433763704459, 0,116070160678918.
0,115432357842292, 0,117340824227052, 0,114794572105785,
0,114790201208717, 0,114151689739583, 0,113513458180752,
0,112872468220974, 0,115423050522635, 0,143405851093052,
0,138950940416588, 0,140217253219071, 0,144662268859769,
0,14847441971641, 0,152290783704404, 0,155475963397883,
0,164426756532424, 0,16760053536469, 0,162514344711853,
0,159332058795417, 0,151068736269937, 0,149160923755755,
0,137709192270229, 0,130708924366787, 0,123070306637102,
0,117974687738857, 0,119245809936872, 0,117326106775782,
0,122413756226772, 0,130047595709665, 0,145948812468612,
0,150402142613181,., 0,05, 0,04, 0,045, ..., ..., ..., ..., ...,.
.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.
.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.
.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.
0,41763939536042, 0,415693459004884, 0,411893026189672,
0,409996367624642, 0,406806168639344, 0,405541937379636,
0,403607071498291, 0,409315222566001, 0,409944023628439,
0.409934840470904, 0.413750645246311, 0.417566432921535
0,422655385641797, 0,42965365812232, 0,436654896453155,
0,44364930329344, 0,45064765414928, 0,457646036355387,
0,467820889024742, 0,481185887340017, 0,493284494492094,
0,49456564669957, 0,499026564408861, 0,503492132922427,
0.50285933023531, 0.506056129447622, 0.506702549723624,
0.506067464368605, 0.507337632217846, 0.504137348451565,
0.500946283675119, 0.504757712657227, 0.512386052830777,
0,520015386838913, 0,529555420635595, 0,539096576517502,
0,553087055836816, 0,567072203175747, 0,581062055491441
0,593783392145494, 0,603324019354862, 0,617957789218505,
0,630681868813513, 0,640872945402754, 0,656807530753031,
0,659356671575131, 0,660007636808086, 0,665113592325388]
)
)
);
Warten (2);
// Holen Sie sich das höchste Wachstum für jeden Tag
Zusammenfassen (growth_date_list = by (dt_growth: Date), max_growth_list = Max (dt_growth: Wachstum));
// Konvertiert max_growth_list, derzeit eine Matrix [], in eine Liste {}.
Ist Liste (max_growth_list = Als Liste (max_growth_list));
Warten (10);
// Holen Sie sich jetzt die Daten mit dem höchsten Wachstum
Für (i = 1, i <= N Elemente (max_growth_list), i ++,
one_growth_date = growth_date_list ;
one_growth = max_growth_list ;
// Könnte zu unterschiedlichen Stunden das gleiche maximale Wachstum haben
one_growth_date_max_rows = dt_growth << Zeilen bekommen wo (
: Date == Num (one_growth_date) &: Wachstum == one_growth
);
Für (k = 1, k <= N Zeilen (one_growth_date_max_rows), k ++,
m = one_growth_date_max_rows;
one_date =: Datum;
one_date_time =: name ("Datum & Uhrzeit");
one_hour =: Stunde;
date_time_list = Einfügen (date_time_list,: name ("Date & Time")));
hour_list = Einfügen (Stundenliste,: Stunde);
Drucken(
"Maximales Wachstum von" || Format (one_growth, "Fixed Dec", 3) || "trat auf" ||
Format (one_date_time, "m / d / yh: m")
);
);
);