{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "stunning-architecture", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Warning: Your Kaggle API key is readable by other users on this system! To fix this, you can run 'chmod 600 /home/pogoda/.kaggle/kaggle.json'\n", "Downloading chess.zip to /home/pogoda/dev/IUM\n", "100%|██████████████████████████████████████| 2.77M/2.77M [00:00<00:00, 9.89MB/s]\n", "100%|██████████████████████████████████████| 2.77M/2.77M [00:00<00:00, 9.05MB/s]\n" ] } ], "source": [ "!kaggle datasets download -d datasnaek/chess" ] }, { "cell_type": "code", "execution_count": 2, "id": "sharp-burton", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Archive: chess.zip\n", " inflating: games.csv \n" ] } ], "source": [ "!unzip -o chess.zip " ] }, { "cell_type": "code", "execution_count": 3, "id": "multiple-elder", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "id,rated,created_at,last_move_at,turns,victory_status,winner,increment_code,white_id,white_rating,black_id,black_rating,moves,opening_eco,opening_name,opening_ply\r", "\r\n", "TZJHLljE,FALSE,1.50421E+12,1.50421E+12,13,outoftime,white,15+2,bourgris,1500,a-00,1191,d4 d5 c4 c6 cxd5 e6 dxe6 fxe6 Nf3 Bb4+ Nc3 Ba5 Bf4,D10,Slav Defense: Exchange Variation,5\r", "\r\n", "l1NXvwaE,TRUE,1.50413E+12,1.50413E+12,16,resign,black,5+10,a-00,1322,skinnerua,1261,d4 Nc6 e4 e5 f4 f6 dxe5 fxe5 fxe5 Nxe5 Qd4 Nc6 Qe5+ Nxe5 c4 Bb4+,B00,Nimzowitsch Defense: Kennedy Variation,4\r", "\r\n", "mIICvQHh,TRUE,1.50413E+12,1.50413E+12,61,mate,white,5+10,ischia,1496,a-00,1500,e4 e5 d3 d6 Be3 c6 Be2 b5 Nd2 a5 a4 c5 axb5 Nc6 bxc6 Ra6 Nc4 a4 c3 a3 Nxa3 Rxa3 Rxa3 c4 dxc4 d5 cxd5 Qxd5 exd5 Be6 Ra8+ Ke7 Bc5+ Kf6 Bxf8 Kg6 Bxg7 Kxg7 dxe6 Kh6 exf7 Nf6 Rxh8 Nh5 Bxh5 Kg5 Rxh7 Kf5 Qf3+ Ke6 Bg4+ Kd6 Rh6+ Kc5 Qe3+ Kb5 c4+ Kb4 Qc3+ Ka4 Bd1#,C20,King's Pawn Game: Leonardis Variation,3\r", "\r\n", "kWKvrqYL,TRUE,1.50411E+12,1.50411E+12,61,mate,white,20+0,daniamurashov,1439,adivanov2009,1454,d4 d5 Nf3 Bf5 Nc3 Nf6 Bf4 Ng4 e3 Nc6 Be2 Qd7 O-O O-O-O Nb5 Nb4 Rc1 Nxa2 Ra1 Nb4 Nxa7+ Kb8 Nb5 Bxc2 Bxc7+ Kc8 Qd2 Qc6 Na7+ Kd7 Nxc6 bxc6 Bxd8 Kxd8 Qxb4 e5 Qb8+ Ke7 dxe5 Be4 Ra7+ Ke6 Qe8+ Kf5 Qxf7+ Nf6 Nh4+ Kg5 g3 Ng4 Qf4+ Kh5 Qxg4+ Kh6 Qf4+ g5 Qf6+ Bg6 Nxg6 Bg7 Qxg7#,D02,Queen's Pawn Game: Zukertort Variation,3\r", "\r\n" ] } ], "source": [ "!head -n 5 games.csv " ] }, { "cell_type": "raw", "id": "pressed-vancouver", "metadata": {}, "source": [ "id - identyfikator gry\n", "rated - czy gra rankingowa\n", "created_at - timestamp utworzenia gry\n", "last_move_at - timestamp ostatniego ruchu\n", "turns - liczba posunięć\n", "victory_status - sposób zakończenia rozgrywki\n", "winner - wygrany gracz\n", "increment_code - czas na partię i dodawany czas\n", "white_id - id grającego białymi\n", "white_ranking - ranking grającego białymi\n", "black_id - id grającego czarnymi\n", "black_ranking - ranking grającego czarnymi\n", "moves - lista wykonanych posunięć\n", "opening_eco - kod otwarcia\n", "opening_name - nazwa otwarcia\n", "opening_ply - liczba książkowych posunięć" ] }, { "cell_type": "code", "execution_count": 2, "id": "talented-beatles", "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
idratedcreated_atlast_move_atturnsvictory_statuswinnerincrement_codewhite_idwhite_ratingblack_idblack_ratingmovesopening_ecoopening_nameopening_ply
0TZJHLljEFalse1.504210e+121.504210e+1213outoftimewhite15+2bourgris1500a-001191d4 d5 c4 c6 cxd5 e6 dxe6 fxe6 Nf3 Bb4+ Nc3 Ba5...D10Slav Defense: Exchange Variation5
1l1NXvwaETrue1.504130e+121.504130e+1216resignblack5+10a-001322skinnerua1261d4 Nc6 e4 e5 f4 f6 dxe5 fxe5 fxe5 Nxe5 Qd4 Nc6...B00Nimzowitsch Defense: Kennedy Variation4
2mIICvQHhTrue1.504130e+121.504130e+1261matewhite5+10ischia1496a-001500e4 e5 d3 d6 Be3 c6 Be2 b5 Nd2 a5 a4 c5 axb5 Nc...C20King's Pawn Game: Leonardis Variation3
3kWKvrqYLTrue1.504110e+121.504110e+1261matewhite20+0daniamurashov1439adivanov20091454d4 d5 Nf3 Bf5 Nc3 Nf6 Bf4 Ng4 e3 Nc6 Be2 Qd7 O...D02Queen's Pawn Game: Zukertort Variation3
49tXo1AUZTrue1.504030e+121.504030e+1295matewhite30+3nik2211071523adivanov20091469e4 e5 Nf3 d6 d4 Nc6 d5 Nb4 a3 Na6 Nc3 Be7 b4 N...C41Philidor Defense5
...................................................
20053EfqH7VVHTrue1.499791e+121.499791e+1224resignwhite10+10belcolt1691jamboger1220d4 f5 e3 e6 Nf3 Nf6 Nc3 b6 Be2 Bb7 O-O Be7 Ne5...A80Dutch Defense2
20054WSJDhbPlTrue1.499698e+121.499699e+1282mateblack10+0jamboger1233farrukhasomiddinov1196d4 d6 Bf4 e5 Bg3 Nf6 e3 exd4 exd4 d5 c3 Bd6 Bd...A41Queen's Pawn2
20055yrAas0KjTrue1.499698e+121.499698e+1235matewhite10+0jamboger1219schaaksmurf31286d4 d5 Bf4 Nc6 e3 Nf6 c3 e6 Nf3 Be7 Bd3 O-O Nbd...D00Queen's Pawn Game: Mason Attack3
20056b0v4tRyFTrue1.499696e+121.499697e+12109resignwhite10+0marcodisogno1360jamboger1227e4 d6 d4 Nf6 e5 dxe5 dxe5 Qxd1+ Kxd1 Nd5 c4 Nb...B07Pirc Defense4
20057N8G2JHGGTrue1.499643e+121.499644e+1278mateblack10+0jamboger1235ffbob1339d4 d5 Bf4 Na6 e3 e6 c3 Nf6 Nf3 Bd7 Nbd2 b5 Bd3...D00Queen's Pawn Game: Mason Attack3
\n", "

20058 rows × 16 columns

\n", "
" ], "text/plain": [ " id rated created_at last_move_at turns victory_status \\\n", "0 TZJHLljE False 1.504210e+12 1.504210e+12 13 outoftime \n", "1 l1NXvwaE True 1.504130e+12 1.504130e+12 16 resign \n", "2 mIICvQHh True 1.504130e+12 1.504130e+12 61 mate \n", "3 kWKvrqYL True 1.504110e+12 1.504110e+12 61 mate \n", "4 9tXo1AUZ True 1.504030e+12 1.504030e+12 95 mate \n", "... ... ... ... ... ... ... \n", "20053 EfqH7VVH True 1.499791e+12 1.499791e+12 24 resign \n", "20054 WSJDhbPl True 1.499698e+12 1.499699e+12 82 mate \n", "20055 yrAas0Kj True 1.499698e+12 1.499698e+12 35 mate \n", "20056 b0v4tRyF True 1.499696e+12 1.499697e+12 109 resign \n", "20057 N8G2JHGG True 1.499643e+12 1.499644e+12 78 mate \n", "\n", " winner increment_code white_id white_rating black_id \\\n", "0 white 15+2 bourgris 1500 a-00 \n", "1 black 5+10 a-00 1322 skinnerua \n", "2 white 5+10 ischia 1496 a-00 \n", "3 white 20+0 daniamurashov 1439 adivanov2009 \n", "4 white 30+3 nik221107 1523 adivanov2009 \n", "... ... ... ... ... ... \n", "20053 white 10+10 belcolt 1691 jamboger \n", "20054 black 10+0 jamboger 1233 farrukhasomiddinov \n", "20055 white 10+0 jamboger 1219 schaaksmurf3 \n", "20056 white 10+0 marcodisogno 1360 jamboger \n", "20057 black 10+0 jamboger 1235 ffbob \n", "\n", " black_rating moves \\\n", "0 1191 d4 d5 c4 c6 cxd5 e6 dxe6 fxe6 Nf3 Bb4+ Nc3 Ba5... \n", "1 1261 d4 Nc6 e4 e5 f4 f6 dxe5 fxe5 fxe5 Nxe5 Qd4 Nc6... \n", "2 1500 e4 e5 d3 d6 Be3 c6 Be2 b5 Nd2 a5 a4 c5 axb5 Nc... \n", "3 1454 d4 d5 Nf3 Bf5 Nc3 Nf6 Bf4 Ng4 e3 Nc6 Be2 Qd7 O... \n", "4 1469 e4 e5 Nf3 d6 d4 Nc6 d5 Nb4 a3 Na6 Nc3 Be7 b4 N... \n", "... ... ... \n", "20053 1220 d4 f5 e3 e6 Nf3 Nf6 Nc3 b6 Be2 Bb7 O-O Be7 Ne5... \n", "20054 1196 d4 d6 Bf4 e5 Bg3 Nf6 e3 exd4 exd4 d5 c3 Bd6 Bd... \n", "20055 1286 d4 d5 Bf4 Nc6 e3 Nf6 c3 e6 Nf3 Be7 Bd3 O-O Nbd... \n", "20056 1227 e4 d6 d4 Nf6 e5 dxe5 dxe5 Qxd1+ Kxd1 Nd5 c4 Nb... \n", "20057 1339 d4 d5 Bf4 Na6 e3 e6 c3 Nf6 Nf3 Bd7 Nbd2 b5 Bd3... \n", "\n", " opening_eco opening_name opening_ply \n", "0 D10 Slav Defense: Exchange Variation 5 \n", "1 B00 Nimzowitsch Defense: Kennedy Variation 4 \n", "2 C20 King's Pawn Game: Leonardis Variation 3 \n", "3 D02 Queen's Pawn Game: Zukertort Variation 3 \n", "4 C41 Philidor Defense 5 \n", "... ... ... ... \n", "20053 A80 Dutch Defense 2 \n", "20054 A41 Queen's Pawn 2 \n", "20055 D00 Queen's Pawn Game: Mason Attack 3 \n", "20056 B07 Pirc Defense 4 \n", "20057 D00 Queen's Pawn Game: Mason Attack 3 \n", "\n", "[20058 rows x 16 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "chess=pd.read_csv('games.csv')\n", "chess" ] }, { "cell_type": "code", "execution_count": 3, "id": "pointed-grass", "metadata": { "scrolled": false }, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
idratedcreated_atlast_move_atturnsvictory_statuswinnerincrement_codewhite_idwhite_ratingblack_idblack_ratingmovesopening_ecoopening_nameopening_ply
count20058200582.005800e+042.005800e+0420058.0000002005820058200582005820058.0000002005820058.00000020058200582005820058.000000
unique191132NaNNaNNaN434009438NaN9331NaN189203651477NaN
topXRuQPSzHTrueNaNNaNNaNresignwhite10+0tarangaNaNtarangaNaNe4 e5A00Van't Kruijs OpeningNaN
freq516155NaNNaNNaN1114710001772172NaN82NaN271007368NaN
meanNaNNaN1.483617e+121.483618e+1260.465999NaNNaNNaNNaN1596.631868NaN1588.831987NaNNaNNaN4.816981
stdNaNNaN2.850151e+102.850140e+1033.570585NaNNaNNaNNaN291.253376NaN291.036126NaNNaNNaN2.797152
minNaNNaN1.376772e+121.376772e+121.000000NaNNaNNaNNaN784.000000NaN789.000000NaNNaNNaN1.000000
25%NaNNaN1.477548e+121.477548e+1237.000000NaNNaNNaNNaN1398.000000NaN1391.000000NaNNaNNaN3.000000
50%NaNNaN1.496010e+121.496010e+1255.000000NaNNaNNaNNaN1567.000000NaN1562.000000NaNNaNNaN4.000000
75%NaNNaN1.503170e+121.503170e+1279.000000NaNNaNNaNNaN1793.000000NaN1784.000000NaNNaNNaN6.000000
maxNaNNaN1.504493e+121.504494e+12349.000000NaNNaNNaNNaN2700.000000NaN2723.000000NaNNaNNaN28.000000
\n", "
" ], "text/plain": [ " id rated created_at last_move_at turns \\\n", "count 20058 20058 2.005800e+04 2.005800e+04 20058.000000 \n", "unique 19113 2 NaN NaN NaN \n", "top XRuQPSzH True NaN NaN NaN \n", "freq 5 16155 NaN NaN NaN \n", "mean NaN NaN 1.483617e+12 1.483618e+12 60.465999 \n", "std NaN NaN 2.850151e+10 2.850140e+10 33.570585 \n", "min NaN NaN 1.376772e+12 1.376772e+12 1.000000 \n", "25% NaN NaN 1.477548e+12 1.477548e+12 37.000000 \n", "50% NaN NaN 1.496010e+12 1.496010e+12 55.000000 \n", "75% NaN NaN 1.503170e+12 1.503170e+12 79.000000 \n", "max NaN NaN 1.504493e+12 1.504494e+12 349.000000 \n", "\n", " victory_status winner increment_code white_id white_rating black_id \\\n", "count 20058 20058 20058 20058 20058.000000 20058 \n", "unique 4 3 400 9438 NaN 9331 \n", "top resign white 10+0 taranga NaN taranga \n", "freq 11147 10001 7721 72 NaN 82 \n", "mean NaN NaN NaN NaN 1596.631868 NaN \n", "std NaN NaN NaN NaN 291.253376 NaN \n", "min NaN NaN NaN NaN 784.000000 NaN \n", "25% NaN NaN NaN NaN 1398.000000 NaN \n", "50% NaN NaN NaN NaN 1567.000000 NaN \n", "75% NaN NaN NaN NaN 1793.000000 NaN \n", "max NaN NaN NaN NaN 2700.000000 NaN \n", "\n", " black_rating moves opening_eco opening_name opening_ply \n", "count 20058.000000 20058 20058 20058 20058.000000 \n", "unique NaN 18920 365 1477 NaN \n", "top NaN e4 e5 A00 Van't Kruijs Opening NaN \n", "freq NaN 27 1007 368 NaN \n", "mean 1588.831987 NaN NaN NaN 4.816981 \n", "std 291.036126 NaN NaN NaN 2.797152 \n", "min 789.000000 NaN NaN NaN 1.000000 \n", "25% 1391.000000 NaN NaN NaN 3.000000 \n", "50% 1562.000000 NaN NaN NaN 4.000000 \n", "75% 1784.000000 NaN NaN NaN 6.000000 \n", "max 2723.000000 NaN NaN NaN 28.000000 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "chess.describe(include='all')" ] }, { "cell_type": "raw", "id": "equal-resort", "metadata": {}, "source": [ "Usunięcie id, czasu rozpoczęcia i zakończenia partii oraz id białych i czarnych oraz listy ruchów" ] }, { "cell_type": "code", "execution_count": 4, "id": "representative-lodge", "metadata": {}, "outputs": [], "source": [ "cols=['turns','victory_status','winner','increment_code','white_rating','black_rating','opening_name']\n", "chess=chess[cols]\n", "chess.to_csv(\"chess.csv\", index=False)" ] }, { "cell_type": "raw", "id": "fitting-investigator", "metadata": {}, "source": [ "Średnia, minimum, maksimum, odchylenia standardowe, medianę wartości poszczególnych parametrów" ] }, { "cell_type": "code", "execution_count": 5, "id": "fiscal-vacation", "metadata": { "scrolled": true }, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
turnsvictory_statuswinnerincrement_codewhite_ratingblack_ratingopening_name
count20058.00000020058200582005820058.00000020058.00000020058
uniqueNaN43400NaNNaN1477
topNaNresignwhite10+0NaNNaNVan't Kruijs Opening
freqNaN11147100017721NaNNaN368
mean60.465999NaNNaNNaN1596.6318681588.831987NaN
std33.570585NaNNaNNaN291.253376291.036126NaN
min1.000000NaNNaNNaN784.000000789.000000NaN
25%37.000000NaNNaNNaN1398.0000001391.000000NaN
50%55.000000NaNNaNNaN1567.0000001562.000000NaN
75%79.000000NaNNaNNaN1793.0000001784.000000NaN
max349.000000NaNNaNNaN2700.0000002723.000000NaN
\n", "
" ], "text/plain": [ " turns victory_status winner increment_code white_rating \\\n", "count 20058.000000 20058 20058 20058 20058.000000 \n", "unique NaN 4 3 400 NaN \n", "top NaN resign white 10+0 NaN \n", "freq NaN 11147 10001 7721 NaN \n", "mean 60.465999 NaN NaN NaN 1596.631868 \n", "std 33.570585 NaN NaN NaN 291.253376 \n", "min 1.000000 NaN NaN NaN 784.000000 \n", "25% 37.000000 NaN NaN NaN 1398.000000 \n", "50% 55.000000 NaN NaN NaN 1567.000000 \n", "75% 79.000000 NaN NaN NaN 1793.000000 \n", "max 349.000000 NaN NaN NaN 2700.000000 \n", "\n", " black_rating opening_name \n", "count 20058.000000 20058 \n", "unique NaN 1477 \n", "top NaN Van't Kruijs Opening \n", "freq NaN 368 \n", "mean 1588.831987 NaN \n", "std 291.036126 NaN \n", "min 789.000000 NaN \n", "25% 1391.000000 NaN \n", "50% 1562.000000 NaN \n", "75% 1784.000000 NaN \n", "max 2723.000000 NaN " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "chess.describe(include='all')" ] }, { "cell_type": "code", "execution_count": 6, "id": "painted-shift", "metadata": {}, "outputs": [], "source": [ "!head -n -1 games.csv | shuf > chess.csv.shuf" ] }, { "cell_type": "code", "execution_count": 7, "id": "thick-circular", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "20059 chess.csv\r\n" ] } ], "source": [ "!wc -l chess.csv" ] }, { "cell_type": "code", "execution_count": 8, "id": "adverse-scope", "metadata": {}, "outputs": [], "source": [ "!head -n 2006 chess.csv.shuf > test.csv" ] }, { "cell_type": "code", "execution_count": 9, "id": "fiscal-contemporary", "metadata": {}, "outputs": [], "source": [ "!head -n 4012 chess.csv.shuf | tail -n 2006 > dev.csv" ] }, { "cell_type": "code", "execution_count": 10, "id": "possible-witness", "metadata": {}, "outputs": [], "source": [ "!tail -n +4013 chess.csv.shuf > train.csv" ] }, { "cell_type": "raw", "id": "reflected-alias", "metadata": {}, "source": [ "Wielkość zbiorów" ] }, { "cell_type": "code", "execution_count": 11, "id": "entire-mathematics", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 20059 chess.csv\r\n", " 2006 dev.csv\r\n", " 20059 games.csv\r\n", " 2006 test.csv\r\n", " 16046 train.csv\r\n", " 60176 total\r\n" ] } ], "source": [ "!wc -l *.csv" ] }, { "cell_type": "code", "execution_count": 12, "id": "genetic-moscow", "metadata": {}, "outputs": [], "source": [ "chess_test=pd.read_csv('test.csv')\n", "chess_train=pd.read_csv('train.csv')\n", "chess_dev=pd.read_csv('dev.csv')" ] }, { "cell_type": "code", "execution_count": 14, "id": "provincial-february", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "pd.value_counts(chess['victory_status']).plot.bar()" ] }, { "cell_type": "code", "execution_count": 15, "id": "official-cholesterol", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "pd.value_counts(chess['winner']).plot.bar()" ] }, { "cell_type": "code", "execution_count": null, "id": "cross-clearing", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.5" } }, "nbformat": 4, "nbformat_minor": 5 }