From 5e23e7595703ddc5b412974d87cbe76cd3b662af Mon Sep 17 00:00:00 2001 From: govin08 Date: Thu, 18 Jul 2024 17:52:16 +0900 Subject: [PATCH] last modifications --- Documents/신호생성 정리(240712).pptx | Bin 869875 -> 869860 bytes .../generate_signals.cpython-38.pyc | Bin 25876 -> 25876 bytes .../preprocess_daily.cpython-38.pyc | Bin 34730 -> 34302 bytes Scripts/generate_signals.py | 1 - .../0712_revise_code/0717_revise_code.ipynb | 88 + analysis/0712_revise_code/0718_review.ipynb | 20370 ++++++++++++++++ configs/credentials.json | 5 - 7 files changed, 20458 insertions(+), 6 deletions(-) create mode 100644 analysis/0712_revise_code/0718_review.ipynb delete mode 100644 configs/credentials.json diff --git a/Documents/신호생성 정리(240712).pptx b/Documents/신호생성 정리(240712).pptx index 5a56146c47a065a2542e939ae1e0cac4233a74d9..e49756f91ea8183e11a101f4f06eb7936446820b 100644 GIT binary patch delta 1800 zcmV+j2lx2%i#6nnHGqTxgaU*Egam{Iga(8Mgb0KQgbIWUgbcI|oF0FXJYz}C0RRBS z1ONaL0001RaC9$rX=Qg%a&K^RE_iKhlvKfP+b|5h57<8ly0>=f#rBLi#foC59ttGe zU62?@g)Iq^k~;bN(sI(;sfVREiF$l|k0i9XZ=0Iz!8)l`NoTh)C7`$#QdK4Wv;KXP zQ{p^Rg4J3mByXf%r$Jrfh zXe%qJNL$jISw2rFIpArYCTHNFR<%P-PtL!e2_|DdvGv$4N{n_`D#=godq@Z-Nt&Jb zK1e$9fvrx|*tBZW9^4vQe~t6b+Jy6q@U-(dxc=lgjOCLAr>zHjjihWorDz=es-Vm2 zLEwM(gzRyXyCPUMZ19E7Je|@xj!x@L^7KcLI*apv@5||7JnIYLm6c*;7{||oaAeMK zW$`28hx4%~>3^W*8G}pIe}cbPDSV{yf!u$zB<}5E`+=hW55w1+c*a=QsD)zg<;Ve(NdYpR$1KI ztP!LVLk2l$?=bC9{LOl>x%;!ANq&&I^3wwTL|0);-#gWUWm$I0tp=_7r}*OJ__P@{ zRJz`k1jLh6GOv6Fd}vCrL!-107B3GUv#0rNws?Ghp1-}%A72yPa&?8YAiS~sR$aMC zldW#*eP_b?lj>=%6{P!9zPHos#|i!&)U1U&Rlg~xaktk%?M<@W(U%+2pqh<+ZDN(2 zZyg+tju4MXL_$i#C>{~Y;vLqFFYC6}>c55gvWNeTaY%Y0?T<*Gbt6W88drj5gypZ~ zP4{aChxL!gKLL|ra})%V5xq^f!Y2(T0e?YH6G0TdoA@6ldxvdHElQ?Kph!rh(n!Jc zusdxhZf7<#(+Zv%m4u*)7+W<8rUxUza4_0~2mC|q^glS=ZI@QI4R|!}Wxw~{_ujmD zv-94<`R%F;>X-|{Xx2zhCk%k8%^X6@S!1KPJayXuLL%xQmrbWQpHw!_D%|#7czXvxFf7&DwT$2h~a|g zxx_|N*Tl*bn=`>m608LafdYGsd4GWsDxo<{)D^)(XAnrsL4uZgda6F0s80t#9XC|F z1=Mpb4 z3?N*$k&AP>KvoI40_)I`0U#$)GS?YScYhpjm6R*;D#Sc?NUb`7`K{S~)|$AqfBae98jWX2aJ zjy@Z1d#ulb{-E4gOAfhYi<4Mezmr|QI1##Na-iFM?zi_;yRGT^9%!iD_y0ZqC6AF_ z^hfu}BZ|tnXNXXaRXs#^v?@ZYggz1*UXd*!i3cNPR0-EBh+{`j>1gCc3b>+s8Fw{* zQ8%_;LmZVOQRFI!ma#JkaoNzD+?(OgjFrqxC-f5x>4B~{e+PdV)^E4VD-9(X36VTw zNzDNO0L7R2L=8{@ikC`74JI3Sd%bas0RRBS0ssIJ0000000000000000N;eD){0IO55C8xG0000000000005zv%0&$$2E!{20001a3PeHx delta 1822 zcmV+(2jTeSi#79$HGqTxgaU*Egam{Iga(8Mgb0KQgbIWUgbcI|oF0G3{)?L00RRBo z1ONaL0001RaC9$rX=Qg%a&K^RE_iKhv{b=v+b|5h59mJ#y03QQ&2f!5#fo949tI@q zU9}ingDeS>oI3gX(Tbbesf+fqn@BxAz9$k|-F1y5d$3MuRnVL3m=aK>=0a5k{j>e` zHKW9NrZ|&YK|v4T=-q$%>dVUHdjZeCEkOe1a#qmVdy_|zD{E+&yVeF2-tDw)n8(mo z5x49ai5nR$;y8^OCKMg&?Pu!sZYN6ksmrzj+GMaYpOPv%PUc+)D`6wFUN+w~wV!7)G zj(Yi>5{?s(121L|Z?n<4%H-OLN+{CdWtygx91y%1K%*{Ii)tR6Kc5K};w$4o@S!L% z+7)z>WP|S$BqV>6BwY@CuOvPB$WSk6YFB9wZVO$Q*GHavTQjCF((|t4VEF}b?hyv^ zMuOAUgZ;l_cwf+E_aN|t4Iz8n;l2rW4ZC}xGfU@mPP6kmlPvufq~65Y`};CnOlN%| zyt0CC3@h;qA!XO^UyPKb46E25Pb8;*Y5flX0RR6308o=?a}BqcAPrRn1^6L~?Txqc zBn>73e@{!pFc^pLg5RO!-X)pUZKaF&2Tu+LP82T^($_86CMAj1-5q%F=)sGy58=0R z`wq6<)@?Y1T$10DhxdJx==dc~yk{_0YSl%wL68SZ=vb;@7hMl7{5JBe<0|HfR?tOb zu;`fW??oaDg*MPPIs@Y*Sg$ZC8;Y!pM$Tm+f5ujfAmz4E5UL0tv`M)uwq}SkE*|+1 zaFdWDoPy&qcN~{OKdX&ssfc_Tll(4u~dZ+n+lRja;K<*WoC7R4fT(j~z9ItSC&QaNw_@%l4;n@y+l zf64po>w7l&jBw4BH-rK1v|&&3-j1qlbyChd;nwwvr+JVNpN`o{r_~N3{5L3B1JAO2 zQ$~ZsRt423(Q-x$H^g4iTez6SD!Dm0J0Dyi)+9~hQ|dQ^0ij{g2@iw2vaGH9Yhk*q z;eTV`la^20146=}Rjdu;N>H`1{FSV#2Yzd_{qfi@lfm&71lnR^UbnL+4JHA9PjAyO z6u%?!9jx59^dB9X+)P`?GzrQo){V25xUEHMN48rwP8Bd|8b}P$0)h?ofS87MK+pq+ z@r4%mJK!d5*0QwPI3jY%@4feX&(F{Cdw~nvH5W867lhHAk(^B!08^VegjRCKMrmc{ zwgH4h)IlzzIA`o&VJuiTZ@?mdXCCH~U;%UpDso0uN^jmYgR@Naivk*9#QBE&+n^4!`}v8@(vGL&S+K+;a!aI! zt<2n98k!d}e8{*XtYj*cfo6!|qUX89MpD1q*>9dyIL1kr67PIZD(O z!9r&cNGm~tmU?=sKAfme2S6P+Ri_Qj7!oWZjw&2^Rbi#l3C+2X;krv4tkcu#0fhIN z)GwWF2;eGl983pR%^QRuG`4Pd0il@j9h_r=tu!qG3pE-Tiz{8um3$ENz;1xw6zM$?^t#Jfi-Re2R+0Xw8# zo5K9o>OE^uUD`i>t&W=D{71)cwPP9T-GSQwtbVoB+b+;`_rIKh6u7f3IhvekoKt$r z#^U%H@BmlpF5*}AxHYXJaSqwZg^8ojh1;I!v#38PH`bCzF4^KF);8#5moH9)E}9(Z zwVwN(J=N)Gy1oZ!YWMwrkAKNytQY;!eF})83ho;slxH;$(H*Ud&^s7?Dqo;H)xC_nn!ltQTfZTW%aJJZRYWV;8HTuQ=uhs=@Mp$KW@i)n z35N7g*Pp+`zYOa)x4bJ2B^e3G{)?L00RRBom+C|fPyv^hJ4Fp98~7oL?TrBd0L20T z01*HH00000000000002&mwZJHBpcddVqWY5008_5000mG000000000000000u$Q|< M4I>89D-8eu03hgGzyJUM diff --git a/Scripts/__pycache__/generate_signals.cpython-38.pyc b/Scripts/__pycache__/generate_signals.cpython-38.pyc index 209dc49803e8652647a25a25a596a7f807b351ec..cee8600f2cb76f0f221eae48f010326e8e29bab2 100644 GIT binary patch delta 171 zcmbPoigC&*M&3|fUM>b8h(0qTt$ZV|l`SLFW)E8qCdRj$1MS@z8QB)kbYNr@*gVTo zi-}Qm^HJvyOpL~xx48u}G6rwv@L*(OjNQ!T^_!hBZ!=qv9uwO-CI*ILvB_^k#Wx3r zOk-r+yZJ@v17^l^n@>ibWMbsqJUQkaBct5rrnn2tT$;>4wH_ebCnqF{Z!S&>Vq{d^ Xd@R|KkvEuwk%Li$iGz`ik&6)kHtaCt delta 171 zcmbPoigC&*M&3|fUM>b8XfK$a_Ix9+l`SLlW)E8qCdPN01MS@z8QB-lbYNr@+&s%s zi-}Qe^HJvyOpGR*x48u}GKOsC@L*(OjN8oR^_!hBe=}Q<9uwPoCI*ILvB_^k#Wx3r zOk-r+xA{fr17^nan@>ibWMbsoJUQkaBcuH0rnn2tTw2UPwH_ebCnqF{Z!S&>Vq{d? Xd@R|KkvD{ck%Li$iGz`ik&6)kVVyBE diff --git a/Scripts/__pycache__/preprocess_daily.cpython-38.pyc b/Scripts/__pycache__/preprocess_daily.cpython-38.pyc index e5d3aa7bff296a90a1450cd2db400b5a121c7054..3cbdc68a1e595f2563cd879755c6a919d65d1ea8 100644 GIT binary patch delta 5142 zcmai232>A}7M`Bt&yZx25D0`ol8J1N;fN++fP_oVa2SzG9fdHN8N!5QX3{eQ2_#IA zQ&A4vMZ8$zQNmh_;Ou&^VAZ0sl9O;Q| zbK$X^O)#$j>;w!3bgS!~`Pz0gcc`__5?a6m&X>eviEz=|V(ezfkM6h{Cppnm?LZ6h^e%)99`rqw#TbbiLc_0{ z

(*HmN#pCxMOr5J<#ICQ;J{Q>S1wcbJ;QK6AHenrX?zPD_WS$hw07DEZJk<& z<`X{iCi5Uuhv=|&*p{2en@DE%36`19%UTDJCyl&}@3cl!n(VOlSzsOKE*To#q|ypy zQpdg4o5)F@eW~514pV&^wbS;cb7<3UGIyq25?)U@6d2hxIXY5&MsPhLCFO%sd>W=| zJ;V+(x=q656AMhP6cxYf6-%9bS#6l|n|t8y29`Ax$I0Q<(`_Ka}xe9ao3LGlG%s6+(&W6Pl#K`q@J4(JwdD56^; zfuPKX@)0PnfYQ?93Cj}51_O{Gy-%<*5UPyEWY8#Jh{-5wXVChj7&smt{aLhTVFHAvYd#qYQ?5|>ja4Bus-lr-d)RMe54+1Llp`^2EV_J!)Sx8+5tAw2 zQ{IwEbZ2>jjm`f0h(GL+o@gKxG%h11rZp0hQOSAa+Rb~+=>A$pj7gHc$yh@piZhIsuJ%Pp*Q7UjuHa=CnO~1A|oX1m`xE}6%PXb7}LYT4) zmbi@~I!2yVKP=0OvnSr+XEBsFoLR?|-3r;K0OkwN&86oWOz{&G%%OScUJHmpHUcmk z-8q1{fU5z|LD3E9DMECw>UJhXAlPUSYXJ=TzAZrOYgm5>V6yojOA=lB(M6$ixwr4%t8S%%idRLN5h zueej(gByzi@(er2xM9Z5ZRBFCaM^?_c zeivf>0|8wo#-lb6mD?fY?+AVa_wwWb6nDeg*65Ee4CyHz>7Nmzw?Q{FL|>ES)E`w# znyceKLwFg1tDkZ8@O~n1y3HF31|zyH67|pn1GkHA_6FQ`@>jnc4(}k5+w5)X{j9oR zL7Zl!6yHz5pgc~-@*IFSgfr$e*{Ltc$dM>$$+3)DgXo|~5rQpdbqRXn1Ow4}BM=_$ zgc22@K`jqoW5w?ERHdS9&g~x3ou|l#9jktG?0tvEP!BZjV*Q0zsd@&G`J`TWlOg_ZD>~K^$9XkU;H^7P`;ErUODQDErY( zUY*PYUGuj^@vPvwcLoL^mY&XEPZ7VDuRSh8Oq6VcC?{1>teMxpuS(*C~}pjV`4l6e@Ee&+06B**9pG_?LNOh>pA4tQ5K`{i&LJP0rYXw@c(H;%kl jrEZx+*PLVXK-ID(QAsfXe-!CFPnvFi3%q*~9Z;-jtA`a1Qu=&7%ksue|xR$F_&`-dzjCTG8$xpU{v zo%@=Z{ojq+1ADZb%d)dG9Q4<-bN`0uJCEe7&k|2Rqxgj72G!q~4mQZbrre5_*Q;Bb9qaPbo~EMdJLY>a4@7KvGIzm)zCc>#ESOWDMvohRPd2zLCJvWiaAz3Cf>^EUeL0Nw<=PGF^N z2?jSAr1M)K9a7=yVx4{Wp1Ps>g3J$7-0IEhQt@u`RP|$;IIJF;x?S9&rqoOo`_%fH zYp!9h?f~~Jz)Zkiz)8RtfL_2Hz?XnsfPWKME+Z5$XE&B4$v^55U0c_o$K6 zrsqBb2DcHC6ri_YY+urtw%92|^4^)*&XOLGwga*OIe~Cul-Gpa3wOU~5K;-wbS=S{;bD9TM_s_1C#R(WCTv zqn17e@vj1217NF`?w3t1{&sl~o%9R*rhlm-&cW8S>Xp-`k8BWcNZ=XHoxJjUuR0rd^QGQjx&RvvoGTIwDWmbSj5&X+Dr zLHYdT>FJIIfN^s1ly!i3M}Tq)#yjxn#Bz^kr$$NFC*259t2^RAA=y zXnmuuSX3_3Rr{j3iF6{Q(Fcmej}S|zBkVB5CQW8VeqjnzqrTJ7ia>W7&Vg^&z_+`| z(d+6JUBYyAie5s~jqhH}?>2Q)v*(A?Fgr|nN|?@=(d)u@BAnTm)$i!ldPS$BAv?m$ zgmVn1;WFG!PD8&*gtLq^!*dhHotR>z7diTdnBIP(pf}%P>b;IGjgdL}hW0xyaI9O{ zSBLj2u>PK&dn6LqI3-28$fg?+^|n<5Gvut6o_A(hTW_n>i{u-Z;u)pjiNvIf^np z-nu>>G&ySOs*2ndX{d;Xe{El(nB#BuW5<4 z1-Tedg2l~_SWs4jDI-Kh!fcH-Q#s&*yALvvl9qFN#2=Bq(_wGvoW|4nbg?wQX}LBA z{RU+QPM7*LtkN0}s*)w8`7b~SE5^yig14eLmu8T-JLnUiNh}UMLugu+$P?3@BSnEz z#g-Ii=Q^`QuF&bfP?V^?$@!==$zLtG&qXDB?Xn^_D$r|c>$1+w+0bn+V7?Ny!+7L% zRa84uyrNdsuE@5xVMI-wX6nA$O0Hg?3H8b55_O_>g6Dji%VT4fSMu!7)y2yfP8dt% zHF6jPUr3A9`6}cLbddc6W|(0gvfrx1%jYFh73?T+aOL7uw_Krk#4oEc7uJ@Osby)g zkmU?S;HXN{`fpqBUl#jM(P@bh6I|J2J+hKOeAw zz*lUS#iv1FN5Ir_zuLc|I`dv?TFzj^kW1CeD+)7LU=h}DvO2k9);O-BEWeC6$uzZK zxCl@VDVfxIHhJ+%LpR2QIJl~;LN^uPXP6Mn*Xykfyn#Bf9fK%)RdioLml_Va5M3^w z6VaNaN>*2U4`XCDfFsIM^{Y!0Z=k=6pw3s#wzkV^FUUIqoEs<6x)`F^22;@DL}I;J zgBsA-IWQi3NKONdSLB0s9tPq76M!g4qpVkYy^enibths zCorFIY+BZRI;~+jo1+1_2CMxJl5yFwqX#>aS7P96wB85UhYhtT1l6`n@1M%f{hpdB zhYTuQuLn4DWwlzf=5u!zNzF;FysR>9A}f;eLlEn20Hma_zo4}mI<8n9UOPVfF6c6u zfX=pd^~u^X;(j%BUG1>NH1W6#gUbPMAkS&f&sX!W$@-CG{r$S`?~jZ^g1@1ieZA($ zSOne96Atxu?SeAouDlSi41jo*lLWnVW8MgIbv^c~rNB0Uq8)%7%z*Xp90$2^W6mS#+ z2LXdM$ntQcgd$CL++78}9=GFq3?~fg>SSV}yLTXmXH3#dQ{4$D$*YH(aECxzQ`S)g!y|J^@e}p1a)lVUcD7Mr1%&AsHF1-Bo$|F z!4y`g9jDsV4(cy)5^XCrEV1m2>_o_I%^A4uhs^45oT|?$)e&BKCEx8IB9-a*uwMfq zQ}X-b3G9O(52?_20JPh{?QRO1Yob<~Uj~;($#onc6vqz9?tW60Y?_<+4(y`|e8cR+ zhAjzSS?)kI5{X;xxap^x12XvflFqC81l?^SA+y0&WJ)@OI#;b=nkJK?q@<0KCrHx#5c1bzChAk(> z&MS2P=nC|7{=o`7rH6uOl**P9PA|Ps7W2SvwN759^JOBX==JJl*|6v<(#-O-*0hEq zMzGy}Me;E>2im9VJ%_}07&H|UMX?%niCLI93D$0mwV`zgaQ5M9>A`lYWCmZG>^g;L zv$FUt8V?5ec;sTl(UWUO4`=%K6d81}+!<=5t;YN}J4MC$R z*bp+}oHY~#yTNoVpd30nskJt_-<<7QI0wXD0Db6pAhZw$1GhcCU~nwIf#H-{xXO1X zvpaT+F&tu$aY)d$#=2+_eY361%a=a( zfvuvd>MZsR+F$MhCnw@;EWy(EfW~Itt6DlI5821kFzlk%&FaC<*EFwC+q+(=-7Uho zM&2gpULmv03^OyF)t61Q93#J9GYWdOJ$YSjb6B63XnCFPe#+}B95Wo3I95BZbQlhL zMGddxbC|QJqkBZ=5iG+7=by?r@;^|&?%t4T(MX7Ij*Hd!#47!3aGI(+QOQ3FeWV^p zH0Y;5jHn?!OD^J<+1BjA_fd6hQ?sRQS?|l2{Ob+B_S?Y!6oKXRH#OPUa=wotrR>`z zYOQLXHnLcL2O2_~Uv8Ej3k5bc2jx_u9_%Sz#pm4+F2|A9mWDt_0MD*edAoJcif(GX zk3v#RvK*pHWYC+)OAn<2`Y#m4!XvUo;XOmP3vo($cO2AN$e-2W9pl9p>Tf#|={jWH zNuZ|A$k$yh{!rvQwX=8gq$IR^81M+-Q9uQt62Q|0O|xA1VNg}>EGxt5$@P{qi9IZ# zAd8oGsm7hPL#sTso`fUI)9ty?Q{%bZ<5iFEoF(p3pY0r3*F%EoH__G>ittyl2>-Oy zkCq+(^otMOo#R275845Uo`BZR0UCfzL7@e>TQ%-lNrD@94qsq-=C?$R*5=?sFvY6~ dJY< fsec - self.subtractor // 2]\n", + "# movement = movement.sort_values(by=['start_unix','inter_no','phas_A','phas_B']).reset_index(drop=True)\n", + "self.movement = pd.read_csv(os.path.join(self.path_intermediates, 'movement', f'movement_{self.present_time}.csv'), index_col=0)\n" + ] } ], "metadata": { diff --git a/analysis/0712_revise_code/0718_review.ipynb b/analysis/0712_revise_code/0718_review.ipynb new file mode 100644 index 000000000..1b839f4be --- /dev/null +++ b/analysis/0712_revise_code/0718_review.ipynb @@ -0,0 +1,20370 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1. 데이터를 준비합니다.\n", + "1-1. 네트워크가 로드되었습니다.\n", + "1-2. 테이블들이 로드되었습니다.\n", + "1-5. 필요한 보조 객체들이 모두 준비되었습니다.\n", + "2. 신호이력 테이블을 변환합니다.\n" + ] + } + ], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import os, sys, copy, argparse\n", + "import json\n", + "import sumolib, traci\n", + "from tqdm import tqdm\n", + "from datetime import datetime\n", + "path_root = os.path.dirname(os.path.dirname(os.path.abspath('.')))\n", + "path_scr = os.path.join(path_root, 'scripts')\n", + "sys.path.append(path_scr)\n", + "from preprocess_daily import DailyPreprocessor\n", + "from generate_signals import SignalGenerator\n", + "self = SignalGenerator()\n", + "self.prepare_data()\n", + "self.process_history()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "fsecs = list(range(self.present_time - self.sim_timespan, self.present_time + 1, 5))\n", + "I = len(fsecs)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=0 1704417900\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "

\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
11761184
21771184
31784461
42014461
5202221718
6206221718
721011618
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 4 4 6 1\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 1 1 6 18" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18642021704417740
18682061704417800
18652101704417740
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1864 202 1704417740\n", + "1868 206 1704417800\n", + "1865 210 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=1 1704417905\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
11761184
21771184
31784461
42015574
5202221718
6206221718
721011618
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 4 4 6 1\n", + "4 201 5 5 7 4\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 1 1 6 18" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18652101704417740
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1865 210 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420155741704417870
52022217181704417900
62062217181704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 5 5 7 4 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=2 1704417910\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
11761184
21771184
31784461
42015574
5202221718
62063384
721011618
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 4 4 6 1\n", + "4 201 5 5 7 4\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 1 1 6 18" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18652101704417740
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1865 210 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420155741704417870
52022217181704417900
620633841704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 5 5 7 4 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=3 1704417915\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
11761184
21771184
31784461
42015574
5202221718
62063384
721011618
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 4 4 6 1\n", + "4 201 5 5 7 4\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 1 1 6 18" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18652101704417740
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1865 210 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420155741704417870
52022217181704417900
620633841704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 5 5 7 4 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=4 1704417920\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753361
11761184
21771184
31781184
42011183
52021162
62063384
721011618
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 3 6 1\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 1 1 8 4\n", + "4 201 1 1 8 3\n", + "5 202 1 1 6 2\n", + "6 206 3 3 8 4\n", + "7 210 1 1 6 18" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18652101704417740
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1865 210 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017533611704417790
117611841704417810
217711841704417790
317811841704417870
420111831704417870
520211621704417900
620633841704417800
7210116181704417740
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 3 6 1 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 1 1 8 3 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 3 3 8 4 1704417800\n", + "7 210 1 1 6 18 1704417740" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=5 1704417925\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753361
11761184
21771184
31781184
42011183
52021162
62063384
72101262
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 3 6 1\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 1 1 8 4\n", + "4 201 1 1 8 3\n", + "5 202 1 1 6 2\n", + "6 206 3 3 8 4\n", + "7 210 1 2 6 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017533611704417790
117611841704417810
217711841704417790
317811841704417870
420111831704417870
520211621704417900
620633841704417800
721012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 3 6 1 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 1 1 8 3 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 3 3 8 4 1704417800\n", + "7 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=6 1704417930\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753361
11761184
21771184
31781184
42011183
52021162
62063384
72101262
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 3 6 1\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 1 1 8 4\n", + "4 201 1 1 8 3\n", + "5 202 1 1 6 2\n", + "6 206 3 3 8 4\n", + "7 210 1 2 6 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017533611704417790
117611841704417810
217711841704417790
317811841704417870
420111831704417870
520211621704417900
620633841704417800
721012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 3 6 1 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 1 1 8 3 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 3 3 8 4 1704417800\n", + "7 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=7 1704417935\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753361
11761184
21771184
31781184
42011183
52021162
6206441718
72101262
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 3 6 1\n", + "1 176 1 1 8 4\n", + "2 177 1 1 8 4\n", + "3 178 1 1 8 4\n", + "4 201 1 1 8 3\n", + "5 202 1 1 6 2\n", + "6 206 4 4 17 18\n", + "7 210 1 2 6 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017533611704417790
117611841704417810
217711841704417790
317811841704417870
420111831704417870
520211621704417900
62064417181704417800
721012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 3 6 1 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 1 1 8 3 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 4 4 17 18 1704417800\n", + "7 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=8 1704417940\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753361
11762283
21772273
31781184
42011183
52021162
6206441718
72101262
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 3 6 1\n", + "1 176 2 2 8 3\n", + "2 177 2 2 7 3\n", + "3 178 1 1 8 4\n", + "4 201 1 1 8 3\n", + "5 202 1 1 6 2\n", + "6 206 4 4 17 18\n", + "7 210 1 2 6 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017533611704417790
117622831704417810
217722731704417790
317811841704417870
420111831704417870
520211621704417900
62064417181704417800
721012621704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 3 6 1 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 2 2 7 3 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 1 1 8 3 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 4 4 17 18 1704417800\n", + "7 210 1 2 6 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=9 1704417945\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
21772273
31781184
42012252
52021162
6206441718
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 2 2 7 3\n", + "3 178 1 1 8 4\n", + "4 201 2 2 5 2\n", + "5 202 1 1 6 2\n", + "6 206 4 4 17 18\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
217722731704417790
317811841704417870
420122521704417870
520211621704417900
62064417181704417800
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 2 2 7 3 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 2 2 5 2 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 4 4 17 18 1704417800\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=10 1704417950\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
21772273
31781184
42012252
52021162
6206441718
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 2 2 7 3\n", + "3 178 1 1 8 4\n", + "4 201 2 2 5 2\n", + "5 202 1 1 6 2\n", + "6 206 4 4 17 18\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18682061704417800
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1868 206 1704417800\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
217722731704417790
317811841704417870
420122521704417870
520211621704417900
62064417181704417800
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 2 2 7 3 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 2 2 5 2 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 4 4 17 18 1704417800\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=11 1704417955\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
21772273
31781184
42012252
52021162
6206441718
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 2 2 7 3\n", + "3 178 1 1 8 4\n", + "4 201 2 2 5 2\n", + "5 202 1 1 6 2\n", + "6 206 4 4 17 18\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
217722731704417790
317811841704417870
420122521704417870
520211621704417900
62064417181704417950
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 2 2 7 3 1704417790\n", + "3 178 1 1 8 4 1704417870\n", + "4 201 2 2 5 2 1704417870\n", + "5 202 1 1 6 2 1704417900\n", + "6 206 4 4 17 18 1704417950\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=12 1704417960\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
2177331718
31782273
42012252
5202221718
62061184
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 2 2 5 2\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
21773317181704417790
317822731704417870
420122521704417870
52022217181704417900
620611841704417950
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417790\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 2 2 5 2 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=13 1704417965\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
2177331718
31782273
42012252
5202221718
62061184
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 2 2 5 2\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
21773317181704417790
317822731704417870
420122521704417870
52022217181704417900
620611841704417950
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417790\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 2 2 5 2 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=14 1704417970\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01753462
11762283
2177331718
31782273
42013362
5202221718
62061184
72102252
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 3 4 6 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 3 3 6 2\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 2 2 5 2" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18671751704417790
18691761704417810
18661771704417790
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1867 175 1704417790\n", + "1869 176 1704417810\n", + "1866 177 1704417790\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017534621704417790
117622831704417810
21773317181704417790
317822731704417870
420133621704417870
52022217181704417900
620611841704417950
721022521704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 3 4 6 2 1704417790\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417790\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 3 3 6 2 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 2 2 5 2 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=15 1704417975\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01754452
11762283
2177331718
31782273
42013362
5202221718
62061184
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 4 4 5 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 3 3 6 2\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18691761704417810
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1869 176 1704417810\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017544521704417970
117622831704417810
21773317181704417970
317822731704417870
420133621704417870
52022217181704417900
620611841704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 4 4 5 2 1704417970\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 3 3 6 2 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=16 1704417980\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01754452
11762283
2177331718
31782273
42013362
5202221718
62061184
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 4 4 5 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 3 3 6 2\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18691761704417810
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1869 176 1704417810\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017544521704417970
117622831704417810
21773317181704417970
317822731704417870
420133621704417870
52022217181704417900
620611841704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 4 4 5 2 1704417970\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 3 3 6 2 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=17 1704417985\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01754452
11762283
2177331718
31782273
42014461
5202221718
62061184
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 4 4 5 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18691761704417810
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1869 176 1704417810\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017544521704417970
117622831704417810
21773317181704417970
317822731704417870
420144611704417870
52022217181704417900
620611841704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 4 4 5 2 1704417970\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=18 1704417990\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01754452
11762283
2177331718
31782273
42014461
5202221718
62061184
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 4 4 5 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 1 1 8 4\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18691761704417810
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1869 176 1704417810\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017544521704417970
117622831704417810
21773317181704417970
317822731704417870
420144611704417870
52022217181704417900
620611841704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 4 4 5 2 1704417970\n", + "1 176 2 2 8 3 1704417810\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 1 1 8 4 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=19 1704417995\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01754452
11762283
2177331718
31782273
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 4 4 5 2\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 2 2 7 3\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017544521704417970
117622831704417990
21773317181704417970
317822731704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 4 4 5 2 1704417970\n", + "1 176 2 2 8 3 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 2 2 7 3 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=20 1704418000\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
11762283
2177331718
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
117622831704417990
21773317181704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 2 2 8 3 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=21 1704418005\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
11762283
2177331718
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 2 2 8 3\n", + "2 177 3 3 17 18\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
117622831704417990
21773317181704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 2 2 8 3 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=22 1704418010\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
2177331718
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 3 3 17 18\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
21773317181704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=23 1704418015\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
2177331718
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 3 3 17 18\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
21773317181704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=24 1704418020\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
2177331718
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 3 3 17 18\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
21773317181704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 3 3 17 18 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=25 1704418025\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
21774451
31783352
42014461
5202221718
6206221718
72103374
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 4 4 5 1\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 2 2 17 18\n", + "7 210 3 3 7 4" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
217744511704417970
317833521704417870
420144611704417870
52022217181704417900
62062217181704417950
721033741704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 4 4 5 1 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 2 2 17 18 1704417950\n", + "7 210 3 3 7 4 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
3517744511704417970
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990\n", + "35 177 4 4 5 1 1704417970" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=26 1704418030\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
21774451
31783352
42014461
5202221718
62063384
72104483
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 4 4 5 1\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 4 4 8 3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
217744511704417970
317833521704417870
420144611704417870
52022217181704417900
620633841704417950
721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 4 4 5 1 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417950\n", + "7 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
3517744511704417970
3620633841704417950
3721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990\n", + "35 177 4 4 5 1 1704417970\n", + "36 206 3 3 8 4 1704417950\n", + "37 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=27 1704418035\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01751184
117633518
21774451
31783352
42014461
5202221718
62063384
72104483
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 1 1 8 4\n", + "1 176 3 3 5 18\n", + "2 177 4 4 5 1\n", + "3 178 3 3 5 2\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 4 4 8 3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017511841704417970
1176335181704417990
217744511704417970
317833521704417870
420144611704417870
52022217181704417900
620633841704417950
721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 1 1 8 4 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 4 4 5 1 1704417970\n", + "3 178 3 3 5 2 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417950\n", + "7 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
3517744511704417970
3620633841704417950
3721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990\n", + "35 177 4 4 5 1 1704417970\n", + "36 206 3 3 8 4 1704417950\n", + "37 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=28 1704418040\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
117633518
21774451
31784461
42014461
5202221718
62063384
72104483
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 3 3 5 18\n", + "2 177 4 4 5 1\n", + "3 178 4 4 6 1\n", + "4 201 4 4 6 1\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 4 4 8 3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18711781704417870
18702011704417870
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1871 178 1704417870\n", + "1870 201 1704417870\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417970
1176335181704417990
217744511704417970
317844611704417870
420144611704417870
52022217181704417900
620633841704417950
721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 4 4 5 1 1704417970\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417950\n", + "7 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
3517744511704417970
3620633841704417950
3721044831704417921
3817522731704417970
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990\n", + "35 177 4 4 5 1 1704417970\n", + "36 206 3 3 8 4 1704417950\n", + "37 210 4 4 8 3 1704417921\n", + "38 175 2 2 7 3 1704417970" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "i=29 1704418045\n", + "1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_B
01752273
117633518
21774451
31784461
42015574
5202221718
62063384
72104483
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B\n", + "0 175 2 2 7 3\n", + "1 176 3 3 5 18\n", + "2 177 4 4 5 1\n", + "3 178 4 4 6 1\n", + "4 201 5 5 7 4\n", + "5 202 2 2 17 18\n", + "6 206 3 3 8 4\n", + "7 210 4 4 8 3" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_noend_unix
18761751704417970
18771761704417990
18751771704417970
18791781704418041
18782011704418040
18722021704417900
18742061704417950
18732101704417921
\n", + "
" + ], + "text/plain": [ + " inter_no end_unix\n", + "1876 175 1704417970\n", + "1877 176 1704417990\n", + "1875 177 1704417970\n", + "1879 178 1704418041\n", + "1878 201 1704418040\n", + "1872 202 1704417900\n", + "1874 206 1704417950\n", + "1873 210 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417970
1176335181704417990
217744511704417970
317844611704418041
420155741704418040
52022217181704417900
620633841704417950
721044831704417921
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417970\n", + "1 176 3 3 5 18 1704417990\n", + "2 177 4 4 5 1 1704417970\n", + "3 178 4 4 6 1 1704418041\n", + "4 201 5 5 7 4 1704418040\n", + "5 202 2 2 17 18 1704417900\n", + "6 206 3 3 8 4 1704417950\n", + "7 210 4 4 8 3 1704417921" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
017522731704417790
117611841704417810
217711841704417790
317844611704417870
420144611704417870
52022217181704417740
62062217181704417800
7210116181704417740
820155741704417870
92022217181704417900
1020633841704417800
1117533611704417790
1217811841704417870
1320111831704417870
1420211621704417900
1521012621704417921
162064417181704417800
1717622831704417810
1817722731704417790
1917534621704417790
2020122521704417870
2121022521704417921
222064417181704417950
231773317181704417790
2417822731704417870
2520611841704417950
2620133621704417870
2717544521704417970
281773317181704417970
2921033741704417921
3017622831704417990
312062217181704417950
3217511841704417970
3317833521704417870
34176335181704417990
3517744511704417970
3620633841704417950
3721044831704417921
3817522731704417970
3917844611704418041
4020155741704418040
\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 175 2 2 7 3 1704417790\n", + "1 176 1 1 8 4 1704417810\n", + "2 177 1 1 8 4 1704417790\n", + "3 178 4 4 6 1 1704417870\n", + "4 201 4 4 6 1 1704417870\n", + "5 202 2 2 17 18 1704417740\n", + "6 206 2 2 17 18 1704417800\n", + "7 210 1 1 6 18 1704417740\n", + "8 201 5 5 7 4 1704417870\n", + "9 202 2 2 17 18 1704417900\n", + "10 206 3 3 8 4 1704417800\n", + "11 175 3 3 6 1 1704417790\n", + "12 178 1 1 8 4 1704417870\n", + "13 201 1 1 8 3 1704417870\n", + "14 202 1 1 6 2 1704417900\n", + "15 210 1 2 6 2 1704417921\n", + "16 206 4 4 17 18 1704417800\n", + "17 176 2 2 8 3 1704417810\n", + "18 177 2 2 7 3 1704417790\n", + "19 175 3 4 6 2 1704417790\n", + "20 201 2 2 5 2 1704417870\n", + "21 210 2 2 5 2 1704417921\n", + "22 206 4 4 17 18 1704417950\n", + "23 177 3 3 17 18 1704417790\n", + "24 178 2 2 7 3 1704417870\n", + "25 206 1 1 8 4 1704417950\n", + "26 201 3 3 6 2 1704417870\n", + "27 175 4 4 5 2 1704417970\n", + "28 177 3 3 17 18 1704417970\n", + "29 210 3 3 7 4 1704417921\n", + "30 176 2 2 8 3 1704417990\n", + "31 206 2 2 17 18 1704417950\n", + "32 175 1 1 8 4 1704417970\n", + "33 178 3 3 5 2 1704417870\n", + "34 176 3 3 5 18 1704417990\n", + "35 177 4 4 5 1 1704417970\n", + "36 206 3 3 8 4 1704417950\n", + "37 210 4 4 8 3 1704417921\n", + "38 175 2 2 7 3 1704417970\n", + "39 178 4 4 6 1 1704418041\n", + "40 201 5 5 7 4 1704418040" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "for i in range(30): # fsec : unix time by Five SECond\n", + " fsec = fsecs[i]\n", + " print(f'i={i}', fsec)\n", + " # 1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n", + " print('1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A')\n", + " move = pd.read_csv(os.path.join(self.path_tables, 'move', f'move_{fsec}.csv'), index_col=0).reset_index(drop=True)\n", + " display(move)\n", + " # 2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B\n", + " print('2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로번호, 종료유닉스타임)만 수집 : B')\n", + " recent_histories = [group.iloc[-1:] for _, group in self.history[self.history['end_unix'] < fsec].groupby('inter_no')] # 교차로별로 유닉스시간이 최대인 행들\n", + " \n", + " if not recent_histories:\n", + " rhistory = pd.DataFrame({'inter_no':[], 'end_unix':[]}) # recent history\n", + " else:\n", + " rhistory = pd.concat(recent_histories)\n", + " recent_unix = rhistory[['inter_no', 'end_unix']]\n", + " display(recent_unix)\n", + " # 3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + " print('''3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n", + "4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + "''')\n", + " move = pd.merge(move, recent_unix, how='left', on='inter_no')\n", + " move['end_unix'] = move['end_unix'].fillna(0).astype(int)\n", + " # 4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n", + " move = move.rename(columns = {'end_unix':'start_unix'})\n", + " display(move)\n", + " # 5. 이동류 이력정보 READ\n", + " # - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성)\n", + " try:\n", + " if isinstance(movement, pd.DataFrame): # movement가 존재할 경우 그걸 그대로 씀.\n", + " pass\n", + " else: \n", + " movement = pd.DataFrame()\n", + " except NameError: # movement가 존재하지 않는 경우 생성\n", + " movement = pd.DataFrame()\n", + " # 6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + " print('''\n", + "5. 이동류 이력정보 READ\n", + " - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성\n", + "6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n", + "7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + "8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + "''')\n", + " movement = pd.concat([movement, move])\n", + " # 7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n", + " movement = movement.drop_duplicates(['inter_no','phas_A','phas_B','start_unix'])\n", + " # 8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - self.subtractor // 2을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n", + " movement = movement[movement.start_unix > fsec - self.subtractor // 2].reset_index(drop=True)\n", + " # movement = movement.sort_values(by=['start_unix','inter_no','phas_A','phas_B']).reset_index(drop=True)\n", + " display(movement)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "self.make_movement()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
020611841704414620
12062217181704414620
220633841704414620
32064417181704414620
420111831704414640
.....................
65817811841704418150
65917833521704418150
66017844611704418150
66117611841704418180
662176335181704418180
\n", + "

663 rows × 6 columns

\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 206 1 1 8 4 1704414620\n", + "1 206 2 2 17 18 1704414620\n", + "2 206 3 3 8 4 1704414620\n", + "3 206 4 4 17 18 1704414620\n", + "4 201 1 1 8 3 1704414640\n", + ".. ... ... ... ... ... ...\n", + "658 178 1 1 8 4 1704418150\n", + "659 178 3 3 5 2 1704418150\n", + "660 178 4 4 6 1 1704418150\n", + "661 176 1 1 8 4 1704418180\n", + "662 176 3 3 5 18 1704418180\n", + "\n", + "[663 rows x 6 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "self.movement" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "self.update_movement()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nophas_Aphas_Bmove_Amove_Bstart_unix
020611841704414620
12062217181704414620
220633841704414620
32064417181704414620
420111831704414640
.....................
86417533611704417790
86517534621704417790
86617544521704417790
86717711841704418150
8681772217181704418150
\n", + "

869 rows × 6 columns

\n", + "
" + ], + "text/plain": [ + " inter_no phas_A phas_B move_A move_B start_unix\n", + "0 206 1 1 8 4 1704414620\n", + "1 206 2 2 17 18 1704414620\n", + "2 206 3 3 8 4 1704414620\n", + "3 206 4 4 17 18 1704414620\n", + "4 201 1 1 8 3 1704414640\n", + ".. ... ... ... ... ... ...\n", + "864 175 3 3 6 1 1704417790\n", + "865 175 3 4 6 2 1704417790\n", + "866 175 4 4 5 2 1704417790\n", + "867 177 1 1 8 4 1704418150\n", + "868 177 2 2 17 18 1704418150\n", + "\n", + "[869 rows x 6 columns]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "self.movement_updated" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
inter_nostart_unixphas_Aphas_Bduration
020617044173501145
120617044173502253
220617044173503326
320617044173504426
020617044175001145
..................
1176170441835022103
217617044183503340
017617044185301137
1176170441853022103
217617044185303340
\n", + "

265 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " inter_no start_unix phas_A phas_B duration\n", + "0 206 1704417350 1 1 45\n", + "1 206 1704417350 2 2 53\n", + "2 206 1704417350 3 3 26\n", + "3 206 1704417350 4 4 26\n", + "0 206 1704417500 1 1 45\n", + ".. ... ... ... ... ...\n", + "1 176 1704418350 2 2 103\n", + "2 176 1704418350 3 3 40\n", + "0 176 1704418530 1 1 37\n", + "1 176 1704418530 2 2 103\n", + "2 176 1704418530 3 3 40\n", + "\n", + "[265 rows x 5 columns]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "self.hrhists" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "siggen", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/configs/credentials.json b/configs/credentials.json deleted file mode 100644 index c4b8d9a5f..000000000 --- a/configs/credentials.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "DSNNAME": "Tibero6", - "DBUSER": "snits", - "DBPWD": "snits" -}