From abb2e3d50f0e31c68fe96d6581cfeb91936ae0d3 Mon Sep 17 00:00:00 2001 From: danymukesha Date: Thu, 11 Jan 2024 14:46:40 +0100 Subject: [PATCH] updates --- dist/pca_pwa-1.0.4-py3-none-any.whl | Bin 6911 -> 0 bytes dist/pca_pwa-1.0.4.tar.gz | Bin 5876 -> 0 bytes dist/pca_pwa-1.0.5-py3-none-any.whl | Bin 7936 -> 7974 bytes dist/pca_pwa-1.0.5.tar.gz | Bin 6566 -> 6615 bytes index.js | 2 +- package-lock.json | 4 ++-- package.json | 4 ++-- pca_pwa/__pycache__/__init__.cpython-311.pyc | Bin 220 -> 220 bytes .../app.cpython-311-pytest-7.4.4.pyc | Bin 0 -> 10829 bytes pca_pwa/__pycache__/app.cpython-311.pyc | Bin 10693 -> 10693 bytes .../test_app.cpython-311-pytest-7.4.4.pyc | Bin 6205 -> 6205 bytes tests/path | 1 + tests/test_app.py | 13 +++++++------ {test_folder => tests/test_folder}/header.txt | 0 .../test_folder}/imputation_warning.txt | 0 .../test_folder}/original_data.txt | 0 .../test_folder}/pca_plot.png | Bin .../test_folder}/transformed_data.txt | 0 18 files changed, 13 insertions(+), 11 deletions(-) delete mode 100644 dist/pca_pwa-1.0.4-py3-none-any.whl delete mode 100644 dist/pca_pwa-1.0.4.tar.gz create mode 100644 pca_pwa/__pycache__/app.cpython-311-pytest-7.4.4.pyc create mode 100644 tests/path rename {test_folder => tests/test_folder}/header.txt (100%) rename {test_folder => tests/test_folder}/imputation_warning.txt (100%) rename {test_folder => tests/test_folder}/original_data.txt (100%) rename {test_folder => tests/test_folder}/pca_plot.png (100%) rename {test_folder => tests/test_folder}/transformed_data.txt (100%) diff --git a/dist/pca_pwa-1.0.4-py3-none-any.whl b/dist/pca_pwa-1.0.4-py3-none-any.whl deleted file mode 100644 index ba5765a4c1d05d865baf903d91b7ff994a601642..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6911 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 KT$sN~FLmOp^Io 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 PW|Qw8F$QED00000T&{GO diff --git a/dist/pca_pwa-1.0.5.tar.gz b/dist/pca_pwa-1.0.5.tar.gz index bf26d4205b8c6bd7d025966ebd6827f727ed2036..b81c99675feb6271c6ed582ca66dfde82bbfb7a7 100644 GIT binary patch literal 6615 zcmV;|87Sr-iwFn+00002|8QerUvPI}Eio=IE;TN6VR8WNJ!^N{HkSF!bMhZh<@ku| zN))M=9mUc%<0Mn>G)+#Dc6QdsD^nySv8G6tplmDI{Gk0C`^)y;3-Be$j-4iMXG-*8 z5d`ESg(%#LL}U{??BA+1DW$I$$P zKWFOfvt{Bf`N-Ngdk5CRW2h?Pim|4mHS5J=^a6k(<;GyoAxNN(2uwJgtxmeh3Rkdw9i5CW#1Qjc-9HXMY@h=0~D`XM!WeSG@wZk~U9?6&R!@&Ol1>NP-)qM0WUhyWP zJb?iS(I-+_i%=w^x@piq^(I3=qXYAx(~zJZv2WR19$z3eU--5-N8qdu|EuQ(o?#no z8M=JPQUo#o%_<16B1j$z3CM`m*{7zgA-16iph$p&vWorTb!8uF-<)_$V7A+foB;k2 z?OwkF0Q$YQ*>$=dKC@fhgZ*x+XTkp-4-Pu5gZ+J{Z`pk2x&so%pCTj@JG&D8RU7_0 zV>4tM{rQ!{{RYD#Eyj(x0VB*v1d=AiS`R_ zCm;}6St#g){%RQr?AXyFMESPak^{TBD3icnD=D<3hnAiYIII`8zv5H}gPz$l%+7wlXH^3E=ZpWUq1NrX`tX>uW-$$BEE_jUL@nphAtWIoD*R)+x)3=pIsO*1b|No`! zKhXWL(KR3M9~@ND{^zy-80UTw(|-&5Z}qx^fwKRd&VFYf zQ)CA&RKuEXniq=nmmkjOUNDysUFasN!W3@$oE8?`o`!LNutXqa9ozi{80a0pO0v0S z$^p7vrKEDaXl($OB_b{JUN~XQH4W#CMv~zAWD?j*KAAK$?GZc5=HgQfYqc8wp3FiY zr*ptngC|kfycr8Z?2-}L$->}Qo=AkAmuw7aRukSY?Q`yWap|R|(Szsn304QNDWG3M zFDR63(%hB-8TE#ya58|>o+DA!5e9Z(R07y!KEL4pD6Mhy=J?(5(bFHAI0ppdJF4&L zws4Tj4Z%+KbSjQ;8se0-*q*-R0%ryrqTXOg1Wj}KjMgwFpse&HwgZ8%xI4jRkS1G@ zBhy6ZRrUQ5d&?8{GUFzkE?&{ZZ4d@6F90sYC8rAxtmB*m+fyxIG(%i^iL;ofY`t#J zvHJ?>QOtos0Ln9H_eBgi=c`6B7b`yz5)kNAL=A`=xkgra3-yy>lMOqk&2)-+bW(qP zWYvN4ua7$Q)2!X+fk4Jc7Is3jdLTJd;D~U>)XX>vjq|~L5OW^z*mD#e7_t#A z62&&oU_(J3$6tkK6Cei|d9n862B0}Rd9g<@g2q?r+vfmzRKM_I&-DaA6QhBdb>OM%GT)v8U(w=W z;w3)M@TVuejw1LPFsnDRH&;|gpCP79{}6{O5NOLZ*|*3Dpf|zFc>$350#|w8QkbAdT%?uoT$xo85&2%9 zPQ$B75>8-r7tn?d{&OG47A#)qjOr^OV+^on37|n-naRU8S=P7`4@N19!TJSBih{FB z!r83A+w(;-k)?IXi>Z0DFLFc?ke&KOES%zckW}f*`DD790Vk=Kdd|=SAfOdjWpeWz z1#`vs>XjilKiAEIHF82lCR(9H??`!ISuJ{mcI6LaI_Pn#l{RO5WoU6Eq@$wC9P9x;k{6Qs0h#hsUKBB%%~pX2t}XMV7WdFV zqDKNQ+cL_`;SMiryNOL#t5`zY94&=Aa6Jqe*P1E#Q?Qa6P8w%3R_^gIy z)w?y9FYZq+A*w-t_H&xv2196UatGQll4mJa+blvpFumOAyO(jNz#b|Xxj^TA-hhPt znaU2K(3Lxt=BSS4BCTXM?PU&A_U=2{W&^4V#Jdd`pagpmVP5GDM>GL~^$T1_GdE+nKC^4tkMv#8>GH8kG8{NhWasmw{@3H99?FZ$M?R=h@C8skZHO zf+36RvKsD8Mto@8CbT1og5(m+=T`~Fp5z0|ooYzKZCEO98v#%QOdU;@=nae*%~Qzm z!5k@To_f?1aE2hF+EK$AmIhV@WaX_&dHjO-WF#(ZZ<3NzPz#w-OJyqODUd&7&J(@9 zRjS@7j{goIzyl6AN#SyX6J+Luu!W{(erPB9c7w%YFw~}DHX7Py@R5-U11S8dpPZE7 zBWi-SB!Vlit2ntS8*NY&0yRAm*g^WTL2+*yQj^P@{+64~PALz5;B$@yIMQyij`&FW zZ8@&ozm`5h81N11T-Ph;{~x0>#W{hDeTczJlY?kCL15?W(N@=Q7)AvQGzo+Yse_^C zMM@G_*l|~!82~VlqX!e3-VC6xV${jo-1J*e(joA>Rg0TWDAEpmS-IyopEjaqQZE$c zSj|QnL3pV*44}*mANBg)KlYY;?%wx%FZbRSmQ;8cOb~tgvZTZaVeB4FQTLl6%^K$!0r^skOgmW;%jsv!Aw(=pQ<`7W=a#@jd zR@MtA*(-)JsXX-09UC6VZJweB8x5U7+i@V>zL7%%8G0kR~Soq zm!6v}hCOqyRIP>cAx^^>tR`edS4@B_>as_!>y}=&V%zmrV#xYg zt?&YZ4nMpcvSQ!7Ce&s}?~WE>K!H%1gwrsAI5-1N#b_O; z#2=RmvnhCjsudL$K%O5u=TCM5Ei{d*G7wzYDcI|K4_R41!D;l~^C7O|^NfrEIN>K0 zch=-2RPFSJA?_VLebG0|405^f625EHnbqH-v1)qH=#OQAa~q^ zaNjn2k2C%?Xu_(M&WV+!Bj)LF>>4HoKz%5*QFR{k^^=>2Skm5f>pYs0)oy`C5^#=I;PrqYU{{Ous>MeKV zUkYX*kkN$7DfCTxEY<)U-rY4G z-$;Kj?PlBx&L{JNHtr3OORr2Vy&~w_u0|uHOI&CtdabyKn{_zjC<@%Z3{vZ7AR{sBe zq{DBXy*hgLkJrx`j`3JK#6QfpgZZe&gBoUlWf+rrIs`LoGiPDPf+wTePw!r|4r;|$ zcuG)<|GM%nMz#NJ{q(eT6fPsMtW)s3@O-%hT;5Ub`1y#tb6%<`4fch{FL9N=P?+4V zk;^YUhfBA$$?$9nh)r6;v3*cnhM9t*jrL>Q$MAPPWly8%ur0IXYw)tq@mxLdQpho0 za1Ko^Vm=$yK77E#mL}jQ>vb9Z;_jIAqqce>60SGc$B#&uwxrA|2feT;(kVJtzeR+i9s8-w} zTT@=rsD_(aYf#UTF57bDCmwD(ZDY|E?tM`NC4ef98kaV}942D|3NR-!MA8s&LRCvwb}Ik-qW5FC)}0t;1E@d3Hp_QFYzg0VNgB@OR zwy)HU!wApGLrfMsw|#natmF;tyowMq49>cVhmBp}Co=Yi%RZw~%iQ$Z5xuQ3wQG6{ z!5f+@P_(d7uSikau=HN;qq>Ghhwb8k9k#a^`cOuk0A59jV|A=yK14$Ri-ii6WN1=| zEtL|Jzir3i5$G>Gp|Hv5oWj}|c`gU=O{+y;f7!H;`8Xp>4dMbKj}nya5zPj&)!N;Q zt(|DKaSoroq^uoXQv11OKX$;_5Ce%NjXG!%ZiBga3I7LrM>{meW^vb(74Yw^s$jrY z8<$AM^fw$F6-Rw~`(Hc`8@GZbIkq;Iyvg*p5qIzdPI|oq1ab}1raXi@XLCN zmPVZvbY{)|jAcH-S~NAmb_BH7fW8L7B1jdZr?e52yk~tVFvm%_>i;^62yUpG% z!prsoHNfYG?D?K`HJfMry5jL#sxz|1^y}n0mOQOD4BK^|<9BmEc%Z`r4wb+~3Ff%r zd$tNl*7e55cGL?yR#?**923r?Yq7X~R-xW_vSVX<4%DDgGSnbJ6M6!s&QKfI3;Wv} z?B7|PX1VHYsCISdpg*c+fDhF`9JZz30k)SMw}0yRzdHZtcZ>ha=l}Gr?!d4Pdi#$b zSK)sZ|BH5Ev-Ve8|Lgb6H2yaSJ(U0czFD3BQ^o&xjQ_t#lrMKera}J3w1WKlA)8gW zVG1BEna%(dynXe-2us6x`nbI48sS0C(kBC#DRuD+QwTSGNt}NYwtH?t70hQBek?Ve zwQI1K<LwY|2BvzU+0#nDKGgm&?BdlTzb42f{J_wwiwdf7FP^> zJ{MDL=d;km(CPLFV(HIE5o;Sa%sVYQ%>DfX<8i+`7+9Su0QmFy|7&%FgaL-v|B~{5ga2B%%Q-_0N9&t!bbGe*>Qn`1( zfUEi2Zs4kEHr-T0N21k=x0JBMop+CnYo}WJjRPS3^7vg%TZBs# z*J#4=&b_2X$EZ@iWps^BP0PZEKRR~|=am&i zXa~;$iq=7&h*nwes>y?(hA|}z^u9izXUJu#5>wfKf(AzCk+{0Vm_@$})uIOGX?Qcq3 zQ`ee>;@Rz2MSG$$Tl|KLt+Y2vC${9RghMtSp(<}4_6$=y!dRS66da}(Z?WN!y?T3$ zyB^{YkI)zni}!Mss=SWFd2BD2NT?s|V7@|&1?ANpo$#xB*Ybec-K%u+UOw{#eu0`> z5PggjaLvPxVKz34No%GfMNBNy!#`W43Z{&Tf+f4IXlA9TpmlvgWeA}d*}>*vcW1GZ zb)}wk5oTw1VP#68oV29PL-^anlFxFVsC6V~E?e)`5pW&Ss14F`j?49UvUkdtfBd^v zwcq)sRqYe^tp0x2tbX-dR<*4=R=>a%tD3yxaM%5+_~ur(tLB%h-gLL>m%Cc^Q#Y$# zbFu2J?^UIa-{!hS?S8IQ)joBhs+L}-`n%kwdWXwY?{Jr@cITT^wa>aoRlA>CRJHsL zRqYlxsA^yO{#5Oz+fy}lcj{+dohqfJaBpg=Qu0evue&oGCRMxfl2q*zSEOoH>|CWPRjEo!>- Vm8w*wDpl#G^#76Etv>*u004Cf_e=l) literal 6566 zcmV;X8Cm8ZiwFn+00002|8QerUvPI}Eio=IE;TN6VR8WNJ?(bewvzeHbMg+Ta(qN} zC5rlX6ieG&C%N_BrtwMA-o5MNl_?UESW_fRP_~tF8Qc6FuQ}!ey6iU5? zI$vD>2ff}+`rjFJJC9o3UUvXL&2Ag?zt!n=A2GAk|F52&Fpz)-NWf$5O#M2mGm8m# z8G7!_=P1o$g6)VegKj5Ps00w@= zBJNo+fQf}03U=wn3wC_?oL%xMvqGrDrnkmp?XmXc$rJW|!P)UD3IoAeFk>-3TK2g$ z=a01py$y?RL;04ug2e%3&VW`$KWCTL8sYME5j{DIraZpn+-GjgmjZz;f6eCZ1!Oq@ zD0pnJ#~N0=5`fwcR-VJSC0q|sPh-pVp*mn43%www_64h$`J6jg8<1oN{>+`PBA_@T zuDC!LQogJCM?T1-CpiYS2FP;EU}s8Gp?B87irJQr^svwk4fZAkVj(wTF^`t6Z+X-~ z(aIkp-m|kav3RTjXo^iCqj!%rDt~r#yaw9+GbHouKUU!ykg*?wm`{V?{ER?Df_SWr z$742&f@Ok-0k?xF#umw!@Wa6WfCSy))75rf0(EWl1#Mc(ix*vHy8C+-r2?Nmny0U&ee@72_RZf!asILp;J7YnPY zRH89%ih;4ndO6*~x-OcPB2gE}Kh`-)77O5GgEF z88N|%j4MxE)lhn!;L;~jkU1P{CrYqZ1`Iwzt!ciQf@)kyrD9@1Dl!F?^jQ>KiUjs& zD{`$VRMC9Jtr!#{g#|!6@K#G-V8ad<0qVEKmK?;*L7fEoT1lm)acJoZf!%sxc`Ht3 zKtFvHcsV41Ho|CRBTo?Q?Ch9FP;QAM&)FH9uHsnf+;8nrtKFNVpTvF0 zoO;1j_AQkIi(Vs?hlrgJN(3+(!dU9YL9|vQ1>`^0QbO3>>NBX6Ql+=57icg@M<3hC zER7sSI!247Y=yCcD7aPIcWL_9&~hAze{gN?3yzWnT@XgWFWio?H$3^mVJja7F~aux z=zRj84&;Xs7=RdL^Z5!I8x0BQ|NfVqyg>W%TJkUJ&m2w`U9)SL?Ln{GD#O1& zU;L+@nv;p^yYXaVgzK*#|CuJdOX9y)w+s5;>9@-G??KXJa={~v;wBR|VpS4@s;2F7 z?!PTZgnzwM+W*r2=j=c5{i)G0pAPo-OKt!2+J6kkzKH3+gZ*!HJN>@0|LyjmJplc0 z_j_h({~scep`THpt;{?{-E|gm3~whfUxuC)bIka4#YHS#199$gEAkD8Y-Xz7Qmf-zv@)TOW1I4hUljH>=`Q-)kIfTm+qXW&vp)kRlJSV_{Thk!&5ts0V zEMqypfB?PcS8+N8N;$x{tAtgy8?FtIvREWAAA}u5T+?uBV+5Vmj!Ye$SJn0>>>ZEU>r|R>R&z!3i+m>@Vo#+& z&Ovh}Jp$L1@fhY<$>0W2?|-d7ROoGordT&%oUNJKEEB5Ar)j+}eSv}zFRYj*pFne_AQ8cgsR>+E9DBj#ydm_; z9EehDC6YNz=U2A3lIs(YI|HeR8Ta^-`*Dq`0kMLTx`eN>(TE8If>FEt4e< z+ank<4a;Ba_-88g1WS#LS-Z|G7!gLTZK)Nu72^UADn%;ra?k-~o(uN_AL%W#&h~4v z)}+7)M?XV7VQKwpq$G7cB3T6`T=7xD)_ThE-3i+@N|*|IYk3?nkE$1Li^J5YdLhfKI$@R4zLh+~$*wFlDE7*}Z|4Wdys;!d?jCI@-~%Z_w#cI)t8M&s+?f~x@& zh7kvOC0s{l6;wpN*Qe9qY7z$%=-ma>p@aY2!@dQJ7ucif3fLF{u2~FZkW{Anu+5e= zE*OJR3L~(7ew>hCui{`f%gOe95lZ`MUdC?c{FpNIuhT(*!y`f@&*u4W)f z>ZP6uv;Yif#T86uo;d7=z0_Jnj)beV%Kz(?{zQa>Oa{FE0( zLT9m+?}BT~TsexnXduxe0hetVrsi;mm$hBRrmK~Q&^CKZ(GF4%T}F18pb3m93qTe1 zfUS#SH5YQ zKCAvsB=;jhx*4BUu`GJO>asQH$t6TJ=+Aym)!S%@j7{l48%Fvp)oNQr$OopEJAL;e z?G)HU0V7lBtj!ykusu`RAXK_yqmmreuuP?u?k26waLU$wN4r5_=mPa_0tKkSE<~7D zx>6mb<{M$BUL_!75ih;!CYn$#>SG`PqpaL4KyLG!ckj_*rbr=!NooRRRkL)&NFoRf;Vvq5NhKw;x4u-pE!lw@SkWx{azL%oIg?OWx>2#W&D< zl^=r)BbJq8ge+ev6ukql>P7sc!jqD=L`b3X0-Yza4X0X;8%L54v<1ouz(>Uf3Wyo( z7{^l=Z9f7`(F6mGSWTBMZ4_fb9vFD4DA^q)OQ3_EXC28^@`5_0`e~L)8o*_s(qD~F zPuN=+GT6&>1B@KDtz?2BjqB19&P+ypXxt{WafX8A0?wCLF~*+c1IrCn$ir=1DsCGA zQUgpKO_u02j2O*R$nd}%DQlj1)Dv)qAfnn)qBSgZtP04AJ8H7{1?fpyoZE#XH77SL zq=Q(wo&YAxUYJCJ}3*x)1u%MD48nG>QGs+xI$73_e7mi z9{j-Pj0kX~op>Gck@VX#TDf;4fBeAb8{E06RnY!FMq~1G0;%|rfEOkQ(Qbmm&ex-@ zrr*+y3K@(f5H2JRhMs{GG%&X@EI%^7**F=Hs;c+5&Kx^p$%7anCr5104vTEY&(ZT zw(WH8E~?zSVKN(7e4F!4hIgGx+(5Czi5qU~XIkcZ7ent92++*S-6Ng6p#2cc!3^6r z*s|HmgOHj-L(2sxRzZ)`f*x86SE$|FIOu06ytM&VP|}JtIpCEJ*~eV{ z*OeRvH(6gvcVd3!(@6eNVJ(bN$#ggkagzydWt>dZF!!4`7MDw#f3Wrc^82sfZT-La z{nwzsKQLN@r-M$XS8B(lyw&usV0_5X)R z&2L%O%k0}GZYZAy&YFFEtd<-6xG}SquD2et>hs98&}a*Al^PJ{yR&B!Y-vT{N(@=s z46jsHXgRpTSjf9{op>?qntO#}4V)(*TB|rHW=A;Vo#bC5Ws6oq7ftOC*^^GElfG;x zFID+C2n)3*WqQ3{QYHk4Ru#fk-Z?GhG!nqsKK`@Wo>qo&8bn|-HXC|>vWNl-go-Sj z1~J6JDRKg%b)15HTq??@;0dZ)R9FCcUSOX;+le$+HLl7)aA75AZ*DzgrR@Z#(fz=O zxQ@?LHu~U%pHSRck&{rB(_6Z@d-(iS&nyba<-(2mu3l%Y-WHEl-8(qj%>-{12}DfG zSvY$M6MpiRV_pai%x62o0_|EOr#{{3)UZ5v4$$C}pr=$o2~zZzSFflHge@-u zdxeV-ay{xDx8+|7W+0H!gv!aaO?oV?K32TLAMKdQiy|lfYDLyE@SUn8w|#$d!%r0P zT%R{m57+4JB#)d=#1?o8-Aw?%omc3~XUveU{bq2{H_aj|WUt5wz(W5Pe=Oh@ynrJHr8{xw>)XBtwk;)`8j#I9DSmF(bq-owVl*UD*KldGBa z!aM92e78Gz*osJY#DhEgqhDx09X~Qmcm!F`ZVJ|H+kSRaL~(B&++f2-vvy!g_?O3& zcKT*0a})X`j=8y#UVqw2r4^h{=K4+C8z7fnnOb^9)OTHtMnRXf&`$J9ei1iqa4Jz0 zxXJYd-(3=(A)5gqNB$eA6U?E&V_tXzh$1?_JLl^eF3XD?m_%ys)k!jPi(Wx!*>1c} z$33|O)Y}cyN?@)Z+UY9&|I+`@`~Teme*fQXwYsJM|L67plf_!m%(hB>HUGam$j$$E zOg#S$es@a${~^-BH!t2CzW>MZONM24=KN~+iZyW~85G?ByJTE*3Ee4l&R5^M%;?A5GN=k!$ z;qpsdrOyGA+ck3dg==%^w$>S*O#!h~lQ+4ZIX`j2E0kRf~wvMwO2r@l2oz_{n-zM!&c_Ci$qXnu~<1HFkZCjA=^F9AE^c zYFM<2wZn6^QUBu}ZoVq+Vcg4hh8%><_ADWQ@A)a+${0v17P`JZXolkiC-)sd3y35M zZHgNBYVkjY0an!i50p?)Q9)BNP z;0gC^9n zv+8$hC$7K4D^B;7I#Cefac)S-V&}F`mrg&trJgq-VusFH*YQlO3;aaJ+Hl!t)N84m zUOA+<6{dDgZxMJ)bvcgaHtOX$N*k6w$bD2d@aUkK@34dBmOvlKh!fDOC~>S#-^;pa z2xt)~S4f5?x!6(-V)D0T+dPEv3lGw(GdfPMGDexp5PZ{U(AQrU?PESl*;0YHfY_rH zWxGeyj%+k`w_%V+ zJ95J~!`y7LcZ=Y%xxf+N^F#J*&$^n;Gk#t1Xf1~`vc>f4LPx7XOevntJURoPJO>dsJKt7iEAr|L1p$|BL7U z^je+1(c140o<1$Z|1$m;&D>_~ueScz>zYaYZ}z*W|Gj}(p8r$E|M!glzetoXcS0sX z{>HR|{Q4oCRk&peAc0I~0CL{G`e1}5;XHj@o_CG#ykY5+fy~%3TjHILONKg9%c-lr`7Q(v=VanIJBWcP@{tWWS=_HpPFEAjG z&!84Vn!D19fzRhsiuHUJc^Ep~oj`>Cd=jy=am&2ZqCHNIUCE|{4scVeh-`>bAT}S; zH&@NjpFfk|jn_dRcYQF9y2mUJ)IUL48E4hJQD2hLce1&MSsLT-7v{#UO5{T}Oo`<Z776CGjh4}c^6Jb|%rcD@)B^mY zbH{LASz&~F@Eo9UedQ&zAT}U$|gjPyGbx5!`!N=edda(F$?na(>Do-~wo5a2+?lC;VeQS`mU-XH zGPV3wnZNC(OzqZtGPO_KlBtz(X_?AYrZSbOOl2xlnaWhAGL@-JWhzsd%2cK@m8nc+ YDpQ%tRHibO>7P0MKZXTW8~~sI0A_{IQ2+n{ diff --git a/index.js b/index.js index 593c856..e92a0ce 100644 --- a/index.js +++ b/index.js @@ -1 +1 @@ -console.log(""); +console.log("pca_pwa"); diff --git a/package-lock.json b/package-lock.json index 5735140..2fc7a7a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@danymukesha/pca-pwa", - "version": "1.0.3", + "version": "1.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@danymukesha/pca-pwa", - "version": "1.0.3", + "version": "1.0.5", "license": "MIT" } } diff --git a/package.json b/package.json index de3456b..6da8c02 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@danymukesha/pca-pwa", - "version": "1.0.4", + "version": "1.0.5", "description": "simplified manner for insights and decision-making by visualizing complex relationships with PCA web application", "main": "index.js", "directories": { @@ -23,6 +23,6 @@ "@danymukesha:registry": "https://npm.pkg.github.com" }, "keywords": [ - "pca" + "pca" "danymukesha" ] } diff --git a/pca_pwa/__pycache__/__init__.cpython-311.pyc b/pca_pwa/__pycache__/__init__.cpython-311.pyc index d567021507294039ad925ce9af2f018139f9643c..912485fb38959896d710c4efd08a3bb9c39d5186 100644 GIT binary patch delta 24 ecmcb^c!!aDIWI340}!Ox&6&t;$!I#!bvgh|fCfhZ delta 24 ecmcb^c!!aDIWI340}$MOJbNOyC8O~~*XaOR6bE7e diff --git a/pca_pwa/__pycache__/app.cpython-311-pytest-7.4.4.pyc b/pca_pwa/__pycache__/app.cpython-311-pytest-7.4.4.pyc new file mode 100644 index 0000000000000000000000000000000000000000..15521f707c21c75c985c6290f5a73ef66afbda40 GIT binary patch literal 10829 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 literal 0 HcmV?d00001 diff --git a/pca_pwa/__pycache__/app.cpython-311.pyc b/pca_pwa/__pycache__/app.cpython-311.pyc index b5404fe3a6c82abb3b79288e4cfb8a32908aaa57..af13296bc6c89d5b0eaa8b2e1e4098bf93e4ae1e 100644 GIT binary patch delta 151 zcmX>ad^DJEIWI340}xzSos;@aVk4g(2cyPjTaNckjMAHRxsP)&25tT-{E3+{ZSxCp zNp{AT$xQMq7+W^4mY>4N*f!Zgv6r!J^EpLhCdRDEOe%$pY@16|oS7JNH}6o3VG?Cy uV`TXtV8ST&fdNkBP1e-(5jSVF{lEYuJ~A^f>0V*f`M?AcDVp4)X$b(qcr9uG delta 151 zcmX>ad^DJEIWI340}v$qo1OYzawDG}2cza@TaNckj53>bxsP)&hHm~U{E3+{bMp&v zNp{AL$xQMq7&|tvmY>4N*frTfv6r!H^EpLhCdS;!Oe%$p9Ggp2oS7K&H}6o3VG`wF uV`TXtV8ST&fdNhwP1e-(5w~Ep{lEYuJ~A^f>0V*f`M?AcshQlPX$b)S87=n! diff --git a/tests/__pycache__/test_app.cpython-311-pytest-7.4.4.pyc b/tests/__pycache__/test_app.cpython-311-pytest-7.4.4.pyc index c6a06ede0eb02855a70968910b4173351a115f90..9fe21e144ccbdc6244fad0f45b9c20a399d82902 100644 GIT binary patch delta 110 zcmdmMu-AZhIWI340}$MKH7~VwBkxKkM$^sPnZg(uA8h7habjZRo*c;5$0)G*0h=Nt zqwr=Xjs+}?5}OzEyk%iDm^@MN6r \ No newline at end of file diff --git a/tests/test_app.py b/tests/test_app.py index 500d618..828d779 100644 --- a/tests/test_app.py +++ b/tests/test_app.py @@ -4,14 +4,15 @@ from pca_pwa import app, __version__ def test_verion(): + # Check app version assert __version__ == '1.0.5' - + class FlaskAppTestCase(unittest.TestCase): def setUp(self): # Create a test client self.app = app.app.test_client() self.app.testing = True - + def tearDown(self): pass @@ -39,18 +40,18 @@ def test_perform_pca_route(self, mock_imputer, mock_pca): response = self.app.post('/perform_pca', data={'file': str(mock_file), 'imputation_method': 'mean'}) self.assertEqual(response.status_code, 200) - # Add more assertions based on other expected behavior + # more assertions to be added based on other expected behavior def test_save_results_to_folder(self): # Extract data from the DataFrame original_data = [["A", 1, 2], ["B", 3, 4]] header = [row[0] for row in original_data] data_array = [row[1:] for row in original_data] - + pca = app.PCA(n_components=2) transformed_data = pca.fit_transform(data_array) base64_image_string = app.plot_pca(transformed_data, header, pca) - + # Mock the result and folder path result = { 'original_data': [[1, 2], [3, 4]], @@ -66,7 +67,7 @@ def test_save_results_to_folder(self): mock_mkdtemp.return_value = folder_path app.save_results_to_folder(result, folder_path) - # Add assertions based on other expected behavior + # more assertions to be added based on other expected behavior if __name__ == '__main__': unittest.main() diff --git a/test_folder/header.txt b/tests/test_folder/header.txt similarity index 100% rename from test_folder/header.txt rename to tests/test_folder/header.txt diff --git a/test_folder/imputation_warning.txt b/tests/test_folder/imputation_warning.txt similarity index 100% rename from test_folder/imputation_warning.txt rename to tests/test_folder/imputation_warning.txt diff --git a/test_folder/original_data.txt b/tests/test_folder/original_data.txt similarity index 100% rename from test_folder/original_data.txt rename to tests/test_folder/original_data.txt diff --git a/test_folder/pca_plot.png b/tests/test_folder/pca_plot.png similarity index 100% rename from test_folder/pca_plot.png rename to tests/test_folder/pca_plot.png diff --git a/test_folder/transformed_data.txt b/tests/test_folder/transformed_data.txt similarity index 100% rename from test_folder/transformed_data.txt rename to tests/test_folder/transformed_data.txt