{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Päivitetty 2024-02-07 / Aki Taanila\n" ] } ], "source": [ "from datetime import datetime\n", "print(f'Päivitetty {datetime.now().date()} / Aki Taanila')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Excel-datan avaaminen\n", "\n", "* Pandas-kirjaston **read_excel** avaa Excel-muotoisesta tiedostosta datan dataframeen.\n", "\n", "* Pelkällä tiedostonimellä avaat datan koodin kanssa samaan kansioon tallennetusta Excel-tiedostosta.\n", "\n", "* Jos tiedosto on muussa kansiossa tai netissä, niin lisää tiedostopolku tai nettiosoite, esimerkiksi *'https://taanila.fi/data1.xlsx'*\n", "\n", "* Datan alkuosan ja loppuosan voit avaamisen jälkeen katsoa antamalla komentona dataframen nimen, esimerkiksi **df**.\n", "\n", "* Jos data ei ala ensimmäisen taulukkovälilehden ensimmäisestä solusta, niin voit käyttää parametreja **sheet_name**, **usecols** ja **skiprows**. Esimerkiksi seuraava avaisi datan Sheet2-taulukkovälilehden sarakkeista B ja C hypäten ensimmäisen rivin yli: `df = pd.read_excel('data1.xlsx', sheet_name='Sheet2', usecols='B, C', skiprows=1)`\n", "\n", "* Hankalammissa tapauksissa kannattaa harkita datan siivoamista Excelissä ennen **read_excel**-funktion käyttämistä." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | nro | \n", "sukup | \n", "ikä | \n", "perhe | \n", "koulutus | \n", "palveluv | \n", "palkka | \n", "johto | \n", "työtov | \n", "työymp | \n", "palkkat | \n", "työteht | \n", "työterv | \n", "lomaosa | \n", "kuntosa | \n", "hieroja | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "1 | \n", "1 | \n", "38 | \n", "1 | \n", "1.0 | \n", "22.0 | \n", "3587 | \n", "3 | \n", "3.0 | \n", "3 | \n", "3 | \n", "3 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
1 | \n", "2 | \n", "1 | \n", "29 | \n", "2 | \n", "2.0 | \n", "10.0 | \n", "2963 | \n", "1 | \n", "5.0 | \n", "2 | \n", "1 | \n", "3 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
2 | \n", "3 | \n", "1 | \n", "30 | \n", "1 | \n", "1.0 | \n", "7.0 | \n", "1989 | \n", "3 | \n", "4.0 | \n", "1 | \n", "1 | \n", "3 | \n", "1.0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
3 | \n", "4 | \n", "1 | \n", "36 | \n", "2 | \n", "1.0 | \n", "14.0 | \n", "2144 | \n", "3 | \n", "3.0 | \n", "3 | \n", "3 | \n", "3 | \n", "1.0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
4 | \n", "5 | \n", "1 | \n", "24 | \n", "1 | \n", "2.0 | \n", "4.0 | \n", "2183 | \n", "2 | \n", "3.0 | \n", "2 | \n", "1 | \n", "2 | \n", "1.0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
77 | \n", "78 | \n", "1 | \n", "22 | \n", "1 | \n", "3.0 | \n", "0.0 | \n", "1598 | \n", "4 | \n", "4.0 | \n", "4 | \n", "3 | \n", "4 | \n", "NaN | \n", "1.0 | \n", "1.0 | \n", "NaN | \n", "
78 | \n", "79 | \n", "1 | \n", "33 | \n", "1 | \n", "1.0 | \n", "2.0 | \n", "1638 | \n", "1 | \n", "3.0 | \n", "2 | \n", "1 | \n", "2 | \n", "1.0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
79 | \n", "80 | \n", "1 | \n", "27 | \n", "1 | \n", "2.0 | \n", "7.0 | \n", "2612 | \n", "3 | \n", "4.0 | \n", "3 | \n", "3 | \n", "3 | \n", "1.0 | \n", "NaN | \n", "1.0 | \n", "NaN | \n", "
80 | \n", "81 | \n", "1 | \n", "35 | \n", "2 | \n", "2.0 | \n", "16.0 | \n", "2808 | \n", "3 | \n", "4.0 | \n", "3 | \n", "3 | \n", "3 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
81 | \n", "82 | \n", "2 | \n", "35 | \n", "2 | \n", "3.0 | \n", "15.0 | \n", "2183 | \n", "3 | \n", "4.0 | \n", "4 | \n", "3 | \n", "4 | \n", "1.0 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
82 rows × 16 columns
\n", "