From e41aa574d825bde6fbc6c8ed4a06761f3a6f63da Mon Sep 17 00:00:00 2001 From: Jan Nowak Date: Mon, 17 May 2021 23:13:18 +0200 Subject: [PATCH] Zrobione zadanie 07. --- dev-0/out.tsv | 1000 ++++++++++++++++++++++++++++++++++++++++++++++++ rozwiazanie.py | 109 ++++++ test-A/out.tsv | 1000 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 2109 insertions(+) create mode 100644 dev-0/out.tsv create mode 100644 rozwiazanie.py create mode 100644 test-A/out.tsv diff --git a/dev-0/out.tsv b/dev-0/out.tsv new file mode 100644 index 0000000..a218839 --- /dev/null +++ b/dev-0/out.tsv @@ -0,0 +1,1000 @@ +74192.57088627387 +21964.616530663334 +28108.336800093763 +17524.78314871434 +18577.861710352823 +61977.832556230016 +45204.219887391664 +27059.148888134398 +3455.8857916342095 +31188.18571199756 +22885.20248727873 +66385.2176238941 +3619.5269586108625 +25541.165503300726 +51765.239219291136 +17119.6668733852 +49319.29321817495 +77826.73644166999 +41638.79749863967 +24128.457338077016 +21033.357508296147 +24696.74123265501 +3492.3003280144185 +61641.08367524017 +-4652.845344279893 +74082.70776434522 +64761.334211714566 +32480.198531245813 +9301.287404024974 +46264.37818308361 +62712.01352449879 +62084.06282042246 +3226.9423315040767 +24855.565726596862 +33627.253684008494 +70113.15388443507 +34430.842303347774 +32642.61880864296 +33907.15453582816 +52652.58917329367 +83136.08138936199 +45810.75575248804 +29054.38228817191 +53386.179186223075 +30460.513112952 +62387.260669316165 +77038.79936761502 +19167.087298637256 +66338.99519929197 +56612.477872449905 +68422.27276565786 +-12393.798209843226 +84576.15563011356 +43770.034731116146 +4830.717005504295 +-22377.153008450754 +-11542.049112221226 +37443.22010560706 +55831.588000902906 +39338.01954148989 +62262.497896777466 +-8492.630302938633 +20337.257803783752 +73056.60621924885 +69869.87596447114 +35005.070393258706 +9984.179123455659 +76663.7669034889 +23218.55772380717 +16826.713875859976 +-2282.3967819055542 +36859.320836232044 +31470.07409639377 +10207.231259332038 +80257.03708164487 +16655.635889236815 +76403.44606396649 +32985.084550048225 +38178.38361734059 +18708.47974470444 +30434.69187166076 +12622.9899427481 +58627.228565005586 +21278.33001529239 +29026.925731163472 +40845.35964091029 +81214.23867617361 +28895.852546432987 +46435.108252014965 +21643.726309803315 +30602.917224630713 +62334.84382583853 +38663.518416672014 +60542.69726897217 +-13581.36687684618 +32247.632036461495 +27022.473121832125 +63569.51189501863 +42519.163119642064 +16485.147274287418 +1397.1956103257835 +24716.731845787726 +-1763.1451819036156 +18779.73442588467 +25511.1225500023 +28362.23982421402 +33621.573717487976 +43300.34459982067 +53353.81652224809 +19148.813057026826 +79725.5859849751 +-13238.642868703231 +53291.69937507808 +65539.41976786498 +30709.860574895516 +31064.72705321107 +-5123.754310810007 +50944.34256384615 +43694.38304263633 +24540.027775567956 +41825.15895526018 +32489.69181300793 +12578.717873438261 +39596.23168786522 +66431.80031336565 +45700.03211389575 +-7465.972522988915 +34245.09020034503 +24728.06101279985 +49581.375194855966 +23609.833658721298 +-10145.048320575617 +32571.04370865412 +59725.39939587377 +-8976.21624721028 +49997.13475559838 +40409.32902406063 +70289.73643835448 +44358.8049529288 +54772.70874117315 +24494.27998792287 +58339.11410743557 +32679.18587052822 +26843.2370020207 +29017.88405786734 +53989.94477467891 +91184.27458121255 +6389.040187907405 +6523.026423111558 +44682.25532063376 +62306.43236800097 +22452.18812228553 +64710.224553220905 +-975.686745448038 +68303.9945134176 +-33211.2456028061 +69020.68456698302 +29247.930246827193 +41760.21938377619 +47831.65367718972 +12175.903994690627 +75399.17794444878 +15205.622245538048 +14800.064437553287 +-1230.6566520500928 +8377.700975667685 +24072.239495876245 +35099.011505713686 +26472.36681332998 +83380.84954320546 +84575.67966129165 +62939.38590691984 +16325.096511531621 +22271.017087320797 +82676.80251610093 +35807.07511198521 +69890.8745656088 +85025.4417545516 +68546.7386125829 +83136.08138936199 +57446.47024700511 +40886.81847460568 +20677.508806541562 +5049.336040051654 +17509.340721385553 +6110.660506830551 +53408.96697053872 +26382.800733207725 +2441.706918601878 +1648.75192622561 +-20844.655899438076 +53181.19337724801 +46736.71414723992 +74084.22196621541 +19698.024707107805 +42455.793175865896 +24879.24257904943 +14660.370551512577 +32127.17930006236 +26998.851741940714 +85025.67973896209 +87700.59629663825 +4890.95867913682 +-4054.724723515101 +25779.51125825569 +18804.628120548092 +38426.00795086287 +28244.434722292237 +59565.152012995444 +35895.3713034736 +21469.820990312845 +20797.00841811113 +35213.27163494192 +16879.25278277509 +49581.88379318267 +75093.24623801373 +38637.451282595284 +68558.63963979203 +54844.01485259179 +55302.675633335486 +-17164.165084808134 +50245.2885068208 +29828.246132316068 +-4349.476432893425 +58611.87402271945 +34137.01322606765 +17345.637154652737 +35587.02911047358 +47627.96858473774 +41698.97210660111 +14070.192591539584 +34471.05639853887 +46108.52647059504 +36551.01553712692 +-12051.755422426388 +23842.013324208558 +78157.4481574567 +8752.586592976004 +14718.644897509366 +66498.61947212275 +22034.59210858587 +40450.35499258898 +37620.5745421201 +55748.74214403331 +39702.604685141705 +21523.363260064274 +29823.426171027124 +50053.98502547573 +40266.809750521556 +18291.91954295803 +68756.64086303767 +36382.87806920055 +33350.50506527722 +73261.62657336704 +32163.71170875989 +75193.14295347966 +29562.719736116007 +71769.82555176597 +30250.760569499806 +29511.251041616313 +53456.563852728345 +27040.379882014357 +33995.382184168324 +25985.603956517763 +73183.80888690054 +14638.173247742467 +1180.9877898674458 +87494.53142737225 +14599.141853003763 +7944.74432394281 +7027.252845469862 +34095.57297103852 +29418.55369245913 +47964.71746572852 +73856.62257394567 +30795.15225829184 +12921.148961655796 +41258.878482348286 +42254.31313768774 +22806.191807526164 +74521.58010665234 +60655.35531128757 +27515.840105580166 +15248.0126315495 +84164.26387599204 +15264.017028697766 +91608.80827256665 +24490.41015761625 +56511.41992604267 +78674.34864109661 +19943.62399972789 +71793.3817500323 +45641.247440296225 +24204.794686086476 +36886.8675189903 +15516.340886346996 +46865.290802728385 +26022.10275957454 +43966.66677207686 +59516.54119081702 +31266.92415156029 +27617.013435915112 +7761.19684117008 +27001.619205122814 +25437.019241786562 +44119.89790988341 +23062.503691937774 +70998.60357647296 +56042.202077904716 +15092.434785524383 +16350.264067615382 +-15121.929144131951 +33808.42471897323 +19141.19929019641 +87250.23924235161 +49017.74055480398 +2216.66818964947 +26060.985681219958 +55241.39002235141 +42500.41417378094 +46972.28969789576 +54288.119868109 +31907.49438890256 +32801.956841056235 +77579.23146710079 +47917.4538865732 +29318.0472983066 +30371.68769012578 +64055.12063948717 +35707.480045256205 +26536.86661806889 +75510.93850983959 +10612.224464426748 +37994.85919464566 +7838.129248163663 +44889.68912954442 +43153.89583733864 +46227.5186760677 +41443.580613582395 +82907.4986995589 +47939.19582387153 +70452.78845665418 +36309.161295874976 +65025.35110354982 +11699.244748465717 +52054.80149385985 +9680.90061616525 +16166.779098616913 +68510.4459899133 +54616.17895750515 +53780.42793922406 +23556.34462082293 +38765.12735329196 +51058.00620970409 +54590.53236136772 +37602.228489989415 +32879.176902762614 +21872.581637205556 +44437.72774763778 +37924.062120643444 +93196.28469503578 +63478.505664252676 +26397.90938270744 +57306.26552193239 +5924.6486912043765 +84575.67966129165 +72755.07997058053 +79433.45831387676 +30208.105237240903 +24872.99854164105 +38502.57511713635 +21547.405353237875 +11462.956111737527 +73659.33342493046 +84164.26387599204 +49340.03179263696 +40193.604961733334 +68761.82173933554 +67612.11818289198 +33836.83140696399 +-1708.1951483748853 +52870.680344074965 +39184.78124937788 +67900.97105705272 +25374.489005389623 +38867.04744768143 +19973.85069373995 +2426.7753303050995 +29919.781780780293 +12174.00373272691 +51280.16223622952 +32191.168265768327 +38427.01355440635 +29692.331950831227 +12539.212533562444 +47226.15806882735 +38729.79465402663 +58807.85410774872 +10178.500430232845 +28480.30047737155 +34663.49815467931 +46122.93088189885 +73841.47880655061 +52486.33338866569 +54351.26270974241 +28051.156877141446 +23663.288043429144 +34577.291065829806 +38736.33087786287 +78581.56301453058 +38962.41885106079 +6560.063424447551 +13292.19716113992 +86425.26581205428 +85026.03671557829 +85888.82372226566 +88384.2963484237 +5955.521952754818 +52814.78197613638 +52173.71672660019 +45121.85021636542 +59906.27516720444 +76684.49897378404 +84575.20369246975 +41358.00198839884 +56316.125025748275 +46070.391974982806 +-3051.807026299648 +43889.97706757113 +54493.84633942414 +48084.36504997872 +65554.77431015112 +59970.80153636914 +25301.72236304544 +33904.41818989813 +73261.74556557182 +34912.87250611745 +32311.110602223314 +37387.31996671297 +24509.267048779875 +33809.37062219996 +80813.76970402803 +4479.068948700093 +78815.8586671073 +84576.15563011356 +43331.67098713573 +50153.75285835657 +64526.50647266116 +57454.854879543185 +60120.24603140727 +34380.27296477463 +49269.55065098498 +12905.79441936966 +23773.15116535779 +34204.95990712382 +57625.69939289987 +29833.038594720885 +64422.22930487804 +63301.42166126706 +47382.70212035626 +64842.24262933526 +27090.268258563243 +37282.875530148856 +22207.92502074223 +11677.29633637052 +38747.843822224066 +22912.714516849257 +91814.39717301074 +48324.19988733623 +28783.734824039042 +21433.674641709775 +14529.715081174858 +30495.93914883677 +67306.9948138576 +40676.29062066786 +52475.26714926213 +31468.13918124046 +27378.532056387514 +27221.90232388489 +71760.22252308484 +-5477.4251678120345 +52682.40135873854 +17987.71840356849 +28430.66269111447 +8897.871848104522 +41279.88596706744 +65678.40995780006 +61160.75025853049 +37000.08963219356 +31271.77695937548 +54342.04819795489 +60615.855933487415 +84575.67966129165 +39525.399960673414 +23064.57953855768 +41398.3695742134 +63593.5982284192 +48508.54508363269 +47533.49465828203 +-2492.924635843374 +72377.57461508829 +33339.56713570561 +40302.42668142542 +32320.308992145583 +49421.27477786224 +59023.0569134783 +54080.91635225527 +2791.2798929437995 +72148.42738464754 +42330.614857301116 +-33056.53000271972 +75193.70654957369 +74536.2518129563 +17649.598678313196 +64334.0899389917 +69953.55776567105 +21557.659682668746 +53149.41761620063 +41145.03062098101 +-28057.958233010955 +15865.665727197193 +33839.751106288284 +81045.86423567962 +15446.01551677566 +29404.783515492454 +75930.89462741371 +2275.0304206898436 +67151.29218889307 +76847.82175067998 +55285.7722359905 +51641.0405176403 +26982.967781956308 +91279.52720940858 +31175.15153052658 +82084.63915528357 +8859.583247437142 +87264.69940456003 +19998.48388188891 +6371.316166685894 +58967.577854615636 +74358.76874154154 +74336.33681899868 +34261.28075930104 +-4369.343366405927 +6730.722462769598 +-6380.108844727278 +42206.26973690186 +21917.879803433083 +57129.58533129748 +88150.59637430776 +40811.11355427094 +43602.8473941721 +7179.234727653675 +39382.730902749114 +16071.828986318782 +15097.307978667319 +52534.946992712095 +25374.962950526737 +27095.769181875512 +58217.201954954304 +45656.65521443635 +87777.43610050995 +15910.025681550615 +36038.42418078706 +42835.01906334236 +-4459.840998844244 +54620.48807976022 +51836.19372230768 +12726.153660798445 +-3130.2760492209345 +61365.857450143434 +33056.15324980859 +61478.64012167044 +53399.895413900726 +52887.669959438965 +46818.04580224026 +50763.647714725696 +74521.93527660705 +23365.006486289203 +35652.09074539505 +414.0194642683491 +66978.0121835228 +13843.306832479313 +33217.33352191374 +66448.07308465242 +17582.63678142801 +9587.940891579725 +58627.28179685958 +65619.83594507165 +34606.59201483056 +10597.255982235074 +18605.31826736126 +73262.22153439373 +20520.76615195535 +24167.64497464616 +68544.98722112179 +54678.911988076754 +75378.44226083066 +52709.380362330936 +27571.738003768958 +28621.455333427526 +74789.69712185208 +54333.94997613132 +22293.6004511863 +37852.72826265823 +43679.02850035112 +10727.707641511224 +-33113.343378700316 +43105.75617842935 +29583.488266261294 +40547.605260762386 +33510.97322147153 +-3048.8565091770142 +47102.856741097756 +48177.77974362578 +39907.36880125012 +17415.396212629043 +26350.01561658457 +42152.30433277413 +31048.305117013864 +64893.88940192573 +23222.46220730152 +19242.281379938126 +49595.59586544521 +39801.43788376544 +60839.355919825844 +24731.753559836186 +53771.65868146252 +7341.038032420911 +72795.99080791138 +21429.89269644674 +56006.481759567745 +43224.692911340855 +-4341.8868093965575 +26727.12912524864 +2520.7544922484085 +33013.5791230835 +9478.342715897597 +72563.26565020252 +16518.37168286089 +41458.84858211875 +-4622.682319638319 +18386.13527501747 +39102.92017667927 +31132.287199377082 +25316.715380935 +41859.9686379917 +47984.94520115759 +72460.48829169944 +25659.805352277122 +7550.195042093284 +39330.55374734197 +29704.43396555353 +50475.04073335137 +54057.803570690565 +16682.253260386176 +76120.12302629836 +74006.5508738393 +57409.37376742065 +46950.16170050204 +24809.935666587204 +15753.902343302965 +48480.72465347499 +36764.90238233842 +40567.393704243004 +46373.698703636415 +23308.2463421626 +17037.32961484231 +13808.568222036585 +79119.97585984599 +68674.92465515342 +27827.81244081538 +5530.684299616143 +56175.81019205134 +24288.061256240122 +16380.1897579832 +17985.39742832072 +67178.8042184636 +26606.71356108971 +52174.246144298464 +-16857.1583654508 +28097.238148208708 +1221.8639740087092 +81632.64923198894 +55431.80028518941 +43987.43193658162 +36824.196165693924 +39946.92961368803 +20909.633226578124 +-3054.5364756975323 +20737.029919770546 +10393.694719131105 +23554.44435885921 +22616.8764731884 +43902.07908229437 +11139.696417915635 +-1629.1844686223194 +45594.987223978154 +16815.55975141283 +47793.48323727399 +9365.607406442054 +39332.69098187424 +84085.72902038042 +53927.27342138253 +25018.973358985037 +63191.852176697925 +60741.155520670116 +94077.18399215396 +30735.805243081413 +-23624.259364546277 +8871.578798449598 +6468.164300242439 +13647.624922500923 +56982.98949993029 +2321.6766971023753 +51186.69355161395 +7990.0521685723215 +69523.48676349502 +18046.080634608865 +51904.46800807025 +57696.08272753749 +6543.286571023986 +37237.56544481218 +77580.89735797793 +-5307.923240722157 +23792.250759011135 +44499.871923940256 +-3862.468870480545 +26165.906303628348 +6122.70928969793 +31311.99726432748 +65487.98723376263 +66607.32064567506 +25669.178087900393 +-1720.1009037503973 +87494.65041957796 +-5937.066035219468 +18156.806002477184 +47375.85711816419 +15002.360107075423 +29827.20811628923 +-3638.4681575549766 +60631.80323777348 +51771.00931156147 +10178.592796690762 +30626.96155851148 +59025.6107832659 +48377.08338200953 +54522.23444874864 +25982.835006699897 +76378.33517267369 +-33096.088574451394 +53313.984920552 +69245.10386650544 +32822.185515986755 +87249.88226573449 +59713.56618840434 +7829.10886903666 +-46069.10193919577 +40225.878093819134 +16484.250375160947 +28632.468923816457 +40538.4761772193 +76875.63142329827 +42680.33587573748 +61184.303240884095 +20150.103449902497 +29274.132670318708 +-24067.575652888976 +55541.31271260325 +-18224.892463874072 +32275.94903779123 +25658.69991896581 +49790.002786829136 +41433.768111215904 +19974.529673759826 +-21294.592240442522 +39190.530522275716 +45364.17840275634 +27831.320994409733 +13337.858653381467 +50166.54945282638 +-53242.39383386914 +72696.80468508322 +37761.163050876 +41238.500750553794 +79831.75619312096 +48537.90190260578 +24301.150295839645 +11998.128844894469 +31286.47562247049 +19303.916957913898 +3624.855518226512 +12210.626267174259 +84820.29981179163 +-19386.340335944667 +26136.602716511115 +71028.41576191783 +84575.67966129165 +37033.31628147233 +-3935.5329754855484 +22364.522304127924 +72136.02137747966 +15047.65411788784 +23083.68155834917 +11378.647297803313 +41127.68793168757 +46682.7858173931 +42155.125352879055 +70589.83784674574 +244.934106066823 +50478.39972462412 +78841.20606121887 +7478.707466374151 +44479.64194780495 +14068.25991709344 +31733.05297220312 +12505.477285956964 +60213.17720956169 +77580.89735797793 +42540.60733650811 +22440.52539951261 +-2709.1879288619384 +32045.757519312203 +40749.00403115712 +72563.26565020252 +49061.64514268655 +12986.155124014243 +77579.23146710079 +80076.04837814253 +37286.655234704725 +43301.294730803 +76410.61169097014 +84638.24173741788 +21429.89269644674 +48311.52698257752 +58275.51120182313 +18353.440284144133 +-8269.105775856413 +65455.44465941936 +30974.298252354376 +41326.11622770224 +68265.20305443369 +28227.838688076474 +9974.838397860527 +54605.43562529981 +21643.068623951636 +66395.89870102517 +14852.480806236155 +35830.48224834446 +26596.44590834342 +36518.61125108972 +26129.79460821394 +74048.53098408412 +52170.200259586796 +33409.58713424113 +22445.909431688488 +57533.62522613164 +21060.814065304585 +24452.751847848296 +34823.50990189891 +31261.95734345354 +1276.9888747585937 +26700.218777895905 +16701.44297979027 +3953.4462660271674 +11560.706311678514 +21545.946623929776 +40733.649488870986 +13861.634197897278 +74868.05632046796 +60454.502033115365 +31692.562848155387 +47658.730901164 +14938.754960755818 +94077.65996097587 +37996.32016466092 +77368.02148957085 +60654.91601933818 +70021.76646137983 +39114.49277370237 +41640.2770473212 +59460.17400331795 +13920.294712034985 +34028.08165645506 +44595.18775175605 +11104.974145432003 +58487.97173020709 +26043.078921037726 +7171.529720230028 +701.6230828063563 +42754.0179958744 +7221.625113665126 +4651.427653837949 +43093.68657618947 +-67364.96187353507 +40318.51162892487 +-39036.53287067264 +37930.34081124049 +73056.03767292295 +54233.68069922924 +20727.369250162505 +84575.67966129165 +-3328.875811111182 +38082.534041067585 +59535.40508151706 +-10671.533249186352 +60415.884852536954 +29613.284129499458 +67346.79608807713 +66106.92423822172 +81850.25735702831 +93001.79217006639 +66113.2029288197 +27652.63036681898 +2468.2155853342265 +40405.44202433899 +27145.809102750383 +23539.422644812614 +20362.74479245022 +58243.718023675494 +85398.51123188902 +15428.675068187527 +38806.38831238542 +64308.98676971346 +53554.37819178868 +89513.14505369961 +48474.863067882136 +26518.62702964712 +15047.124700188637 +61410.748799155466 +46411.48651042022 +23920.521760075353 +61537.41851316951 +23020.712711730972 +54529.007903856225 +80059.30032985099 +66520.96131563839 +51841.69132670574 +68172.45789340604 +255.99810476321727 +24736.991993700154 +42348.40695603471 +86014.9554600669 +42524.24719067849 +70394.68937024381 +50238.9543436626 +-28043.502830559388 +-495.9107507765293 +72424.84627796151 +32365.163711008616 +31596.207238402218 +24976.437374661677 +-5489.4473139112815 +60738.799892234616 +79989.15372009855 +66837.27002937347 +12546.085530004464 +24020.264659848064 +23175.12520710565 +19139.21096280124 +47606.48978197947 +28620.89220204018 +78357.29807783663 +65414.604238266125 +8432.373370130546 +16715.42667781096 +70371.48589017615 +79021.56655975617 +10234.42186329607 +79595.9446817385 +61371.24345927965 +39765.738373782486 +45153.65054881852 +57209.67073553894 +38665.471910490654 +12457.282154485583 +83136.08138936199 +33924.076511839405 +22420.7183773648 +-2945.9270898746327 +18125.093555067666 +62007.373590712436 +17310.475590220653 +24212.830281042494 +25543.012533410452 +78167.94610830583 +87526.09421450272 +67415.83849842753 +37222.15767067112 +44941.12671183888 +7643.905644468032 +66300.8203205727 +18916.01172140427 +-8520.419657524675 +23257.58687783964 +68674.26949339733 +72271.52552583534 +49199.44100746792 +76528.47536230274 diff --git a/rozwiazanie.py b/rozwiazanie.py new file mode 100644 index 0000000..1e73470 --- /dev/null +++ b/rozwiazanie.py @@ -0,0 +1,109 @@ +import numpy as np +import pandas as pd + +from sklearn.linear_model import LinearRegression +from sklearn import preprocessing +from sklearn.metrics import mean_squared_error + +data_train = pd.read_csv("train/train.tsv", header=None, sep='\t') +#print(data_train[[1,2,5]]) +data_train[3] = data_train[3].astype('category') +data_train[4] = data_train[4].astype('category') +brand_codest = dict(enumerate(data_train[3].cat.categories)) +brand_codes = {y:x for x,y in brand_codest.items()} +#data_train[3].map(data_train_codes) +data_train.replace({3: brand_codes}, inplace=True) +#print(brand_codes) +#print(data_train[3]) +fuel_codest = dict(enumerate(data_train[4].cat.categories)) +fuel_codes = {y:x for x,y in fuel_codest.items()} +#data_train[3].map(data_train_codes) +data_train.replace({4: fuel_codes}, inplace=True) +#print(fuel_codes) +#print(data_train[4]) +# #Normalizacja danych +# flcols = data_train[[0, 1, 2]].columns +# x = data_train[[0, 1, 2]].values +# # min_max_scaler = preprocessing.MinMaxScaler() +# max_abs_scaler = preprocessing.MaxAbsScaler() +# # x_scaled = min_max_scaler.fit_transform(x) +# x_scaled = max_abs_scaler.fit_transform(x) +# normcols = pd.DataFrame(x_scaled, columns=flcols) +# for col in flcols: +# data_train[col] = normcols[col] + +X_train = data_train[[1,2,3,4]] +y_train = data_train[data_train.columns[0]] +# print(X_train[3].value_counts()) +# print(X_train[4].value_counts()) +#print(X_train) + +# train_columns = data_train.columns[5] +# text_columns = [3,4] +# data_train_dummy = pd.get_dummies(data_train[columns]) +# print(len(data_train_dummy.columns)) +data_val_X = pd.read_csv("dev-0/in.tsv", header=None, sep='\t') +data_val_y = pd.read_csv("dev-0/expected.tsv", header=None) + +data_val_X.replace({2: brand_codes}, inplace=True) +data_val_X.replace({3: fuel_codes}, inplace=True) +#print(data_val_X[2].value_counts()) +#print(data_val_X[3].value_counts()) +X_val = data_val_X[[0,1,2,3]] +#print(data_val_y) +reg = LinearRegression().fit(X_train, y_train) +print(reg.score(X_train, y_train)) +print(reg.score(X_val, data_val_y)) +print(mean_squared_error(data_val_y, reg.predict(X_val), squared=False)) + +file = open('dev-0/out.tsv',"w") +for index, row in X_val.iterrows(): + #print(np.reshape(row.to_numpy(),(-1,1))) + y_pred = reg.predict(np.reshape(row.to_numpy(),(1,-1))) + # print(y_pred) + file.writelines("{}\n".format(y_pred[0])) + # if index==10: + # break +file.close() + + +data_test_X = pd.read_csv("test-A/in.tsv", header=None, sep='\t') +data_test_X.replace({2: brand_codes}, inplace=True) +data_test_X.replace({3: fuel_codes}, inplace=True) +data_test_X.replace({2: {"Fabrycznie": 90}}, inplace=True) +# print(data_test_X[2].value_counts()) +# print(data_test_X[3].value_counts()) +X_test = data_test_X[[0,1,2,3]] +#print(X_test) + +file = open('test-A/out.tsv',"w") +for index, row in X_test.iterrows(): + #print(np.reshape(row.to_numpy(),(-1,1))) + y_pred = reg.predict(np.reshape(row.to_numpy(),(1,-1))) + # print(y_pred) + file.writelines("{}\n".format(y_pred[0])) + # if index==10: + # break +file.close() +# #Normalizacja danych +# flcols = data_val_X[[4]].columns +# x = data_val_X[[4]].values +# # min_max_scaler = preprocessing.MinMaxScaler() +# max_abs_scaler = preprocessing.MaxAbsScaler() +# # x_scaled = min_max_scaler.fit_transform(x) +# x_scaled = max_abs_scaler.fit_transform(x) +# normcols = pd.DataFrame(x_scaled, columns=flcols) +# for col in flcols: +# data_val_X[col] = normcols[col] +# #Normalizacja danych +# flcols = data_val_y[[0]].columns +# x = data_val_y[[0]].values +# # min_max_scaler = preprocessing.MinMaxScaler() +# max_abs_scaler = preprocessing.MaxAbsScaler() +# # x_scaled = min_max_scaler.fit_transform(x) +# x_scaled = max_abs_scaler.fit_transform(x) +# normcols = pd.DataFrame(x_scaled, columns=flcols) +# for col in flcols: +# data_val_y[col] = normcols[col] + + diff --git a/test-A/out.tsv b/test-A/out.tsv new file mode 100644 index 0000000..2d3d195 --- /dev/null +++ b/test-A/out.tsv @@ -0,0 +1,1000 @@ +34861.02709476743 +52870.854447137564 +21120.547140610404 +-6975.069872093387 +10850.208875373006 +25280.454370883293 +39342.65304656234 +15907.526695509441 +58199.98429228272 +50305.00300346129 +-8604.81440011505 +47934.76192267798 +23483.97787238937 +35952.184679455124 +-37022.83135506697 +-11723.238725853153 +27112.637926030904 +70163.07278941944 +33321.59421776328 +15601.30562114995 +61874.19489304349 +14609.290373906493 +-7106.164092289284 +33664.58775059506 +-1593.9674316281453 +36092.95347541664 +31465.166250061244 +40439.23552133143 +89837.22308427747 +33411.37916658446 +61437.84679495357 +21417.790681724437 +20372.382474321872 +17634.609376749024 +26665.496505412273 +1757.0919260689989 +53876.84533430077 +38744.12489114888 +75301.36360538658 +39046.01667494699 +38318.97440250777 +62581.00718934648 +38387.98215966858 +40035.58689552825 +52357.55184297729 +42831.901122666895 +51435.95714429114 +7346.896009735763 +23921.44695795048 +27221.481610601768 +53738.901538517326 +70265.37573303469 +17165.749553704634 +57229.301166232675 +3440.891803582199 +31985.07431302406 +69201.67171150725 +35055.606632576324 +69805.91719708778 +94488.0048164269 +21719.85418412648 +71293.94685562328 +60671.36180950422 +29559.443932380527 +45312.53191355523 +74800.31911309808 +-1717.724125828594 +4420.72529632505 +31643.474498176947 +84576.15563011356 +74224.42669128813 +77826.73644166999 +43759.444677556865 +48576.4940053951 +44367.93403647281 +25070.96677367855 +21674.90219529625 +10842.44348178897 +84548.76259274967 +5247.7572847614065 +23593.597342239693 +45328.6785127148 +50876.42623083852 +63142.26762229577 +38564.3332333453 +62349.029843239114 +84585.85907233413 +31353.016806073487 +23432.021615029313 +72529.17429818492 +28439.371061375365 +68707.91866766475 +68959.52257336956 +5713.7023646896705 +27002.756225435995 +59492.88981356379 +31188.18116421718 +27607.884352372028 +66278.22137188725 +19595.811120040715 +84164.26387599204 +20358.90961533226 +17680.837180583738 +36668.1074806368 +41921.601975261234 +73860.84396592807 +75341.91400250327 +29027.90779983159 +17922.726075025275 +11647.958096064627 +34137.01322606765 +18444.0235609198 +26602.788232604973 +28719.12631488312 +13336.636034525 +69481.51709076669 +8425.054680573754 +90335.61964768171 +-9483.511456418782 +53644.96370927151 +23242.23457625974 +16966.44465579558 +29237.308033513837 +4281.153473721817 +33089.23081156239 +26999.889757967554 +32333.240411323495 +31451.217205229215 +60790.796812204644 +32104.452578592114 +40780.82518298272 +41327.57025950495 +31050.865418626927 +2226.155266695656 +43067.70956786163 +63160.52578938287 +36507.164181101136 +55019.23327839188 +25922.186453601345 +27153.00764357671 +57821.79291555565 +15231.146128099412 +47853.28691007197 +6758.687618104741 +30253.081544746645 +20865.693985507824 +70129.54644274618 +48338.983539585955 +40517.739843463525 +21341.66280740034 +69534.38081958797 +78305.593205587 +77366.00089849066 +46702.97889963351 +8852.354425857775 +83655.36911405716 +63692.868695308454 +-416.5126323392615 +40638.19077824522 +46666.3311070092 +15718.632074453868 +4921.739574229345 +47402.866691871546 +16551.212272045203 +50657.17823725846 +48693.72994655743 +18486.326061887667 +47637.132321469486 +60108.58941539191 +55348.901196463965 +70133.38161986414 +7472.640850943513 +16816.600008144975 +46620.522788521834 +57145.32222239766 +18119.74417608045 +40846.13271068875 +70808.75221726671 +65903.62552588806 +74220.02744328324 +59054.58154214453 +48308.809354950674 +15419.985276592895 +16445.934378612787 +55614.34216441866 +72736.22607830819 +24911.905157440342 +50671.16254971083 +84534.12340790313 +32695.543775651604 +4207.26140510384 +22186.747154330835 +16911.49464788381 +33359.91245408915 +25089.241015288047 +13958.375975792296 +43098.0511710057 +51362.899285681546 +10196.43025049474 +37617.12542509753 +65391.49145670142 +34608.16208667308 +27599.976550772786 +33989.08491490502 +75755.58695404232 +25441.929328824393 +44597.596137251705 +17672.84244353138 +25608.128551664762 +37795.906178438105 +16582.450774316676 +3716.9205843890086 +26577.356742116623 +382.8156050974503 +39168.27522184793 +26738.79256545659 +13040.14116712939 +34915.884736222215 +42308.004717031494 +-2343.8552986774594 +22020.930661651306 +791.4630293929949 +86275.2772390917 +22828.404509755783 +3294.406147205271 +27658.81893166527 +25480.33893940691 +76306.88390203286 +5884.778110606596 +63870.11442740634 +-19080.00055276882 +-18562.050066699274 +65304.17947158683 +62863.263669603504 +36959.03543725796 +18242.606211859733 +60726.27716422826 +26987.551317811012 +34353.73188555986 +26197.267344132066 +-21411.91494676005 +8560.404791170731 +68899.49376467988 +7993.267802239396 +9987.363366572186 +23471.892454328947 +47641.86215700861 +40359.18458484486 +59790.87770268228 +40811.11355427094 +17823.03005266469 +54667.19030352775 +55669.581901960075 +79618.4327993216 +69026.75410896353 +15297.576366578229 +30638.88556243945 +34626.01561499946 +84576.15563011356 +47847.124470563605 +20581.302831448615 +73248.7797459336 +72530.33144605346 +8883.6808131719 +70735.36224785168 +36892.19842231367 +43211.21781164687 +76797.48302519042 +-2055.952555499971 +55541.93257607613 +24560.312573197298 +20308.241814563982 +40222.8737977054 +68141.54138949327 +-4488.33557187859 +4282.966325438581 +24621.504377811216 +12981.392875994556 +80461.52180830203 +27035.56800444331 +47074.359927357174 +37031.321273637004 +44782.74570693914 +46577.213239053264 +40909.84889915772 +68936.73934187926 +62060.44284978323 +84576.15563011356 +19786.170602777973 +46487.57785255276 +31065.325302491896 +53121.7845400786 +49149.82472138386 +31536.948108235374 +48335.07905609161 +18162.19003465306 +52429.009173651226 +35121.80174682755 +41796.40038556885 +59541.084945034236 +66849.28415905219 +50586.30057720002 +62131.03619515337 +60093.14746285789 +67865.24542173278 +58437.4925173847 +55568.11660129018 +-4886.101106871851 +75034.81972821616 +22784.14782408066 +42260.74113787711 +4493.680449229665 +56463.171562716365 +65688.01963533182 +18721.478658554144 +63245.28798273951 +48563.545974646695 +19209.49626331404 +33332.45589707978 +45365.093880550936 +29124.263409585692 +44831.203069156036 +44491.63081930764 +17666.94551797677 +4457.3478307724 +88691.09016115963 +54598.41555492766 +25176.906833446585 +56625.152878277935 +4472.702373058535 +-34826.058542531915 +23678.64258571528 +60780.53847204056 +74385.1236232426 +40882.0331665054 +24734.19208737556 +21014.07990384847 +-7760.768435958773 +69128.73357262649 +78990.03637146857 +71793.3817500323 +38008.15810029674 +49816.53444037121 +79223.47016542777 +84575.08470026497 +15896.99211451225 +24172.965048088692 +52830.25561867375 +73516.77895611245 +57353.47586923279 +63797.49326935224 +47780.785141635686 +78841.80102224555 +6003.717084225267 +37597.847820650786 +27730.65626240056 +3768.506501068361 +23439.22846668586 +43845.38660818152 +51128.3085191967 +68562.15086216293 +27013.73009838257 +7978.389445798472 +24550.856391334906 +-2032.7865420803428 +39520.0505816862 +63581.52602469735 +29056.915452606976 +34824.88074616343 +81953.83773594629 +52642.4753055796 +94077.65996097587 +57602.612163919024 +27863.325566924177 +39776.985395759344 +51596.572333665565 +70391.59376623947 +85398.63022409473 +10714.770879733376 +29781.51865036972 +77581.61131121032 +26031.55955586955 +43932.367453583516 +21932.102027956396 +27548.590569015592 +32601.74756969046 +44173.62839578837 +6606.857064153068 +8873.566945457831 +3236.1340419147164 +12078.598253955133 +45344.44319113158 +50865.566141161136 +9875.59998267889 +54142.2257815022 +43330.626151962206 +-422.521937886253 +65823.130822015 +45648.89047099091 +35398.27784702461 +85026.03671557829 +3656.67667005118 +48660.19185611978 +49426.8007116681 +20584.84524341207 +-1996.2194801941514 +47654.91654341947 +25287.384289889596 +25701.510078758933 +52151.51942282822 +59501.57960515842 +36430.12306968961 +60596.09618112072 +57359.06366070174 +57301.52629138157 +42342.12826543767 +14553.753633365966 +74706.40257802047 +28661.325914024375 +24307.45279965643 +45702.58721254766 +37642.17312181555 +78815.8586671073 +-3253.165109087713 +71704.07873211056 +32812.12759058457 +26162.07112651132 +42938.039423786104 +84338.29021137301 +30715.0666686194 +50099.3483426664 +20353.668940762058 +84575.67966129165 +7945.197449708357 +-439.1514687659219 +25872.532592820935 +36973.43984856084 +90273.68649395276 +75386.89218901098 +29578.78697210923 +84575.67966129165 +76589.33798359148 +59887.41827603988 +2123.745358960703 +35584.35274320468 +76145.47301684506 +17756.488869063556 +53711.9256061567 +59887.29000788741 +57042.248630097136 +-10266.50709960796 +7588.750250987709 +-35405.08237805776 +12014.308104218915 +31089.326537761837 +66130.86902572401 +-12314.364576101303 +42895.22832449153 +27498.44194372464 +9320.353768874891 +33670.74814080447 +14886.7801247295 +19359.462499607354 +31963.861793424003 +62753.96461856086 +26156.830451940186 +66580.25010708068 +44761.415165296756 +-13856.866239953786 +-37269.449037498794 +38667.794005627744 +2674.8181364042684 +64764.693202988245 +32321.018862304278 +21164.39849663619 +6883.433577888645 +63203.103457090445 +44485.05683348514 +16145.037161317654 +62790.55025911331 +-22199.88360781595 +71748.64768535458 +80036.15517150983 +67250.22870261036 +7593.4800865268335 +52825.491129946895 +55183.68342786189 +52371.21235040948 +21969.37653890811 +31120.291648364626 +-1032.5080348495394 +5899.6556049333885 +29747.33519059792 +38619.246347362176 +58637.87185041886 +37951.51867765188 +34112.897081666626 +56836.54073744826 +47652.01291861851 +55013.19033150002 +28383.947108324617 +79736.1174997855 +11519.328208721243 +58351.69230800215 +17144.21980559267 +26870.69355902914 +66976.48997027613 +33420.59566037636 +-7869.864843480289 +64891.6262736097 +68999.1273872843 +1470.6811204301193 +64440.048974836245 +47141.32182424143 +57019.66620573308 +59761.76131987665 +41039.49269582983 +77826.73644166999 +18086.00892847404 +46415.31980853528 +59031.73958647344 +46328.604121359065 +35006.22660162579 +24346.846441269852 +85397.67828645092 +-18105.003359274007 +1635.180021272041 +-11917.829387950711 +-7851.409059254453 +43300.34459982067 +25573.354136554524 +50757.375161547214 +614.9442895250395 +56723.40650928859 +56873.46015582979 +22228.626701309346 +7252.475315134972 +93558.9729373185 +56951.00904008653 +59396.773494471796 +58398.40789079107 +59073.02453917265 +32451.04623068031 +84576.15563011356 +46213.95793203637 +32578.57661108207 +28881.16310300678 +26982.967781956308 +68926.86197193805 +34346.06153132394 +29081.45231029205 +34471.808613238856 +34688.06966555305 +74538.0627907142 +44484.88262237515 +69083.39345926698 +56581.214112003334 +33410.95797850657 +72444.27344472893 +32461.429195011966 +-8756.286899241619 +39858.69972464163 +15389.643673448823 +16652.89644141402 +90041.65169328079 +69391.94433113374 +55166.78003051691 +32172.399259648286 +49994.10286264401 +77971.6110236207 +83334.14942050539 +56013.623815990984 +19931.51974429749 +56130.58939596731 +44527.328480948694 +55995.36087401211 +78927.35530313663 +15086.630040064454 +15771.755871629342 +68600.37652098294 +13883.937123835087 +14043.156747814268 +52229.758514394984 +34278.1148502687 +-19335.803838854656 +55964.02780718729 +44165.14584314637 +37523.180916342884 +75383.23150227778 +2276.1933136126027 +15419.985276592895 +26060.985681219958 +34299.796689841896 +51433.69635968376 +72762.30879215989 +-6752.969421132468 +4155.284328370355 +23651.62673495151 +38041.57477743458 +78189.39653997589 +25508.327154821716 +-902.5629094652832 +32609.484267118387 +11134.895035292953 +53240.7767455522 +22473.365988696925 +15599.274628260173 +25189.95897915121 +62471.12548875157 +16186.77430028189 +63948.6165088322 +42862.18541592546 +72200.16038030107 +89918.49476061575 +25387.40050899051 +70659.32622855436 +11834.388384266756 +21613.914124358445 +-2810.342680531554 +37118.573239339516 +61531.04873170424 +42748.811974491924 +42193.03016481921 +76833.03253376391 +22755.022562735714 +50501.18588266522 +10715.21017168276 +10987.493901122361 +32889.766956320964 +68867.42260633316 +34664.420214025304 +-14032.232529459521 +67966.894937912 +35193.95937730651 +48098.555615160614 +48098.10935433768 +59551.23346593883 +45841.14729923196 +70045.44638001919 +28493.246159367263 +71733.02559534088 +25669.321445506066 +61663.66703910567 +33396.4980946416 +26546.50429993868 +30731.073166836053 +15657.969687540084 +31255.204707717523 +40171.08035868406 +5687.249170519412 +79221.56990346406 +8956.412802327424 +57595.71202020906 +53325.25839293469 +57974.87708747946 +63921.16089132335 +9578.38820390869 +84164.02589158155 +84250.38940264937 +27696.92101479508 +79708.18576877564 +17372.10892749019 +67437.28799059615 +-1144.4518039068207 +-32250.67139928229 +24189.980933471583 +42337.78892879747 +32751.917859684676 +18494.59289949294 +29510.21078488417 +8850.454163893126 +48439.31622808613 +-5373.258086924441 +-2853.68319752533 +40534.54502629582 +29217.313259920105 +91608.45129595045 +63204.527605552226 +56286.434428946115 +41637.097641346976 +17327.291102522053 +16502.57784862537 +83994.6411917163 +23560.179797940888 +8384.09032202512 +43221.02587521076 +35125.46245917771 +31953.35915011447 +52382.78361052275 +4875.6380157908425 +25815.11825205572 +34828.56824500766 +-1139.6318426178768 +41371.42161553167 +44381.53386838175 +-3518.5466404724866 +15957.56661638245 +7915.771324357949 +21189.025480072014 +78306.72873926256 +37534.24491503928 +25290.658364349045 +77581.96828782745 +40299.45150953997 +1248.4236318897456 +32147.79309558682 +49471.514891430736 +47268.05369032733 +40975.61747768801 +38725.74057157617 +-107.60688492748886 +36804.40772221424 +40088.32144231163 +88524.50107349735 +37254.378716407344 +37945.33407681342 +45661.86123581976 +83136.08138936199 +14504.193981410936 +20882.176669568755 +23813.042565329 +52653.3436644068 +74232.39807982743 +33835.42684901133 +89512.07412385102 +9775.885381652042 +57854.96633298043 +90116.97375934478 +63629.7211561678 +17833.178573569283 +29608.025123945437 +73076.89502256736 +22626.005556732416 +90169.21000063699 +73934.88815759774 +18168.468725250103 +43326.34242752101 +42581.06280736625 +28472.505344198085 +31681.552081313916 +36054.87221166026 +71469.78709026705 +20488.10357356444 +84575.67966129165 +41874.33839610685 +34900.532434643246 +26090.763213476166 +16864.284300584346 +18471.071210661903 +20493.309594946913 +33269.14749598876 +41043.836471273564 +4281.2390773091465 +38350.97222317103 +8509.782220741734 +77163.14763158746 +82300.13191270921 +61935.35382046923 +32380.784314386547 +88729.2547520902 +-5194.021967113018 +69188.67279765755 +63083.477631714195 +68805.30867507588 +-37078.20225757826 +52774.32354209293 +87700.59629663825 +13139.94365319889 +51606.565691876225 +28415.694208922796 +75372.90849099029 +32380.957545244135 +31225.33480900619 +655.3096346333623 +87249.88226573449 +35076.93674017489 +20880.241754416376 +54261.13725623768 +47295.56571989693 +46380.72231499106 +16908.188888465054 +69676.69040241838 +74473.65657027811 +58257.7824524343 +46560.34449489694 +30833.61958214268 +29298.52412109822 +62307.98280260991 +43559.506877178326 +83862.85748668946 +-11256.912748042494 +31013.34822575841 +55977.597471435554 +48819.26296532713 +-1952.8767224941403 +39354.23408900667 +11536.907870584168 +65237.30303360708 +-8343.243262466043 +62289.954453785904 +25639.92997334432 +79880.51383650117 +-827.0337592177093 +27297.133299080655 +68659.24959105626 +2836.764798777178 +59467.6335877059 +3352.23896054551 +38227.020281466655 +42407.18990035914 +16567.516945313662 +28708.205673791468 +37591.127597398125 +62186.46014820319 +37912.43256946653 +18088.507914516144 +83380.37357438356 +10755.698055023327 +42281.024345867336 +52887.669959438965 +17066.577729397453 +2846.3700681654736 +58421.95996430516 +15335.706893136725 +12738.077664726414 +73853.52689760085 +36727.354975085706 +45062.17037291452 +12743.461696903221 +17378.33438623231 +28614.796859791502 +-20751.148441925645 +64757.01913242787 +81542.63106860407 +22241.27373345755 +82930.25450450741 +37241.55538216885 +68215.41392985452 +17056.572566100396 +18112.74737086054 +39147.15055158455 +36711.44799762964 +64691.06655541062 +25745.36143478565 +16122.874510736205 +40185.86415561661 +39340.84911506437 +38352.99971582927 +45540.51340191066 +29367.245792613365 +24749.572434973903 +31102.930380404927 +54735.171162977815 +56308.30463439785 +27203.64415679779 +26498.394524372183 +84575.67966129165 +-14417.759191474877 +27626.65335849207 +46289.33589873277 +78841.20606121887 +66671.27528326213 +29774.79174760636 +19779.35636210814 +25037.740124398842 +30358.09005219955 +38092.14411600772 +-2173.0098458202556 +39526.824036794715 +41264.443539737724 +66501.45074935537 +40326.48959397245 +83780.69597805478 +23744.591621749103 +28264.42548515275 +34315.7199281808 +1438.6358653549105 +8138.401193018071 +60191.04921216797 +33334.864757371135 +-14052.874406708404 +67355.92687528115 +13472.822703883052 +31917.601577106863 +18401.633174908347 +-36781.011767002754 +-5510.5408719675615 +17534.388418102637 +-2636.437361041084 +24475.055615330115 +94013.22591658868 +46965.99018792529 +31688.272304565646 +27096.84332259372 +87249.88226573449 +3889.313942716457 +62582.907451311126 +11311.632169063203 +21784.91581904702 +28777.01460078638 +28403.2061341051 +40638.19077824522 +71624.35489394423 +76949.55521351006 +5672.438164066523 +68924.21661387384 +56811.7300132988 +34417.38802302629 +78172.76805159915 +41543.44749242999 +22681.783745280467 +8680.892619846389 +37657.05147825554 +49958.906645023264 +29812.45182328485 +41185.94145831186 +53165.689127961174 +-12649.869436021894 +25996.397991437465 +27788.50989511516 +18260.864378946833 +-2818.0476879552007 +-33604.8447536733 +19627.10332896188 +44726.75815779623 +55589.79732097406 +9681.940872897394 +51484.86442233343 +74304.71546245739 +33607.02594857942 +39785.491549641825 +66225.6239985656 +-15698.123406084254 +16814.699746181257 +16667.144863614812 +36275.98787845019 +48103.937406630255 +14781.68373223301 +56953.211967674084 +15838.209170188755 +78816.3346359292 +-12928.515322871506 +31769.638612754643 +45256.16007022932 +1050.4229873707518 +83168.48036346119 +61336.6459657345 +-3087.8856632085517 +45625.71488721669 +29830.127815613523 +12542.902112368494 +24490.41015761625 +74518.7505330788 +70601.71011050139 +11743.837519973516 +61995.15666685812 +3767.475825709291 +17526.351516895927 +29378.69585140515 +48388.296943026595 +17848.077749382704 +11960.135466181673 +73261.74556557182 +43949.08634605631 +13671.248543098569 +54214.84238673188 +76292.15551036596 +65181.879080558196 +58771.502187217586 +46566.05911460519 +45883.33557784185 +50987.206894995645 +78902.78476242628 +21257.4461062653 +23116.25485253427 +52302.87603164278 +66076.05321737938 +-38035.01291319076 +47652.48686375562 +42429.20053182077 +6971.65183121711 +69019.05578105059 +4646.607692549005 +-1806.427960012108 +47193.35213282984 +22926.113324608654 +20835.881800062954 +85128.84526367392 +24239.390522695147 +28601.259252294898 +30421.729851705953 +60649.67534476705 +73767.73547384329 +27260.457532778382 +83136.08138936199 +-12836.556720416993 +73565.69165413827 +61794.46462809481 +55098.86800265033 +13650.270435336046