You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: python-pro-data-1/nacteni-dat/nacteni-dat.md
+64-10Lines changed: 64 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -103,7 +103,68 @@ Názvy všech sloupců pak z vlastnosti `columns`:
103
103
Index(['Jméno', 'Datum', 'Věc', 'Částka v korunách'], dtype='object')
104
104
```
105
105
106
-
### Index
106
+
107
+
### Výběr sloupců
108
+
109
+
V některých případech nás jako první při práci s daty napadne nějak si data zjednodušit. Například budeme chtít v DataFrame vybrat pouze některé sloupce, a to co nás nezajímá, můžeme zahodit.
110
+
111
+
K tomu použijeme výběr sloupců pomocí hranatých závorek. Zápis připomíná práci se seznamy - hranatou závorku napíšeme přímo za název proměnné, kde máme uložený `DataFrame`, a do ní vepíšeme název sloupce, který nás zajímá.
112
+
113
+
```
114
+
>>> nakupy['Věc']
115
+
0 Prací prášek
116
+
1 Savo
117
+
2 Toaletní papír
118
+
3 Pivo
119
+
4 Pytel na odpadky
120
+
5 Utěrky na nádobí
121
+
6 Toaletní papír
122
+
7 Pečící papír
123
+
8 Savo
124
+
9 Máslo
125
+
10 Káva
126
+
Name: Věc, dtype: object
127
+
```
128
+
129
+
Zde je důležité říct, že pokud vybíráme pouze jeden sloupec, vrátí se nám takzvaná **Série** (`Series`), což je jiný datový typ než DataFrame. Sérii si představme jako jednorozměrnou tabulku.
130
+
131
+
Pro výběr více sloupců musíme do indexace DataFrame vložit seznam s názvy sloupců.
132
+
133
+
```
134
+
>>> nakupy[['Jméno', 'Částka v korunách']]
135
+
Jméno Částka v korunách
136
+
0 Petr 399
137
+
1 Ondra 80
138
+
2 Petr 65
139
+
3 Libor 124
140
+
4 Petr 75
141
+
5 Míša 130
142
+
6 Ondra 120
143
+
7 Míša 30
144
+
8 Zuzka 80
145
+
9 Pavla 50
146
+
10 Ondra 300
147
+
```
148
+
149
+
Tady se nám již vrátil datový typ DataFrame. Tohoto triku můžeme využít, když chceme získat pouze jeden sloupec, ale nechceme ho v datovém typu Série, ale jako DataFrame.
150
+
151
+
```
152
+
>>> nakupy[['Věc']]
153
+
Věc
154
+
0 Prací prášek
155
+
1 Savo
156
+
2 Toaletní papír
157
+
3 Pivo
158
+
4 Pytel na odpadky
159
+
5 Utěrky na nádobí
160
+
6 Toaletní papír
161
+
7 Pečící papír
162
+
8 Savo
163
+
9 Máslo
164
+
10 Káva
165
+
```
166
+
167
+
### Výběr řádků pomocí čísla řádku
107
168
108
169
Jak už víme, v `pandas` má každý řádek přiřazený index. Jako index můžeme zvolit některý ze sloupců. Pokud však tabulku načteme bez toho, abychom specifikovali index, `pandas` nám vytvoří **číselný index** automaticky. Je to něco podobného jako číslování řádků v Excelu.
109
170
@@ -120,7 +181,7 @@ Věc Pivo
120
181
Name: 3, dtype: object
121
182
```
122
183
123
-
Všimni si, že když jsme chtěli pouze jeden řádek, vypsal se nám výsledek jinak orientovaný, než když jsme chtěli řádků více. Je to proto, že pokud vybíráme pouze jeden řádek, vrátí nám takzvanou **sérii** (`Series`), což je jiný datový typ než DataFrame.
184
+
Všimni si, že když jsme chtěli pouze jeden řádek, vypsal se nám výsledek jinak orientovaný. Výběr jednoho řádku nám vrátí Sérii stejně jako v případě výběru jediného sloupce. Pohled na tento řádek pak máme orientovaný na výšku.
124
185
125
186
Metoda `iloc[]` umožňuje pro výběr řádků použít rozsah ve formátu `od:do`. K tomu používáme **dvojtečku**. Před dvojtečku píšeme první řádek, který chceme vypsat a za dvojtečku první řádek, který již vy výpisu nebude. Pokud tedy například napíšeme `nakupy.iloc[3:5]`, získáme řádky s indexy 3 a 4, ale už ne řádek s indexem 5.
126
187
@@ -161,13 +222,6 @@ Nevýhodou postupu je, že si musíme předem zjistit, jak kolik řádků máme.
161
222
10 Ondra 2020-07-25 Káva 300
162
223
```
163
224
164
-
**Tip:** Trik s dvojtečkou funguje i u sekvencí. Můžeme jej použít třeba na řetězce.
165
-
166
-
```pycon
167
-
>>> pozdrav ="Ahoj Jirko"
168
-
>>> pozdrav[-5:]
169
-
'Jirko'
170
-
```
171
225
172
226
#### Začátek a konec jinak
173
227
@@ -195,7 +249,7 @@ Na prvních a posledních několik řádků se chceme podívat často, hlavně v
195
249
10 Ondra 2020-07-25 Káva 300
196
250
```
197
251
198
-
#### Sloupce
252
+
#### Výběr řádků a sloupců podle čísla
199
253
200
254
Kromě řádků si často chceme vybrat jen některé sloupce, protože mnoho tabulek obsahuje spoustu různých informací a ne všechny nás musejí zajímat. Čísla sloupců zadáváme jako druhý parametr funkce `iloc`.
Copy file name to clipboardExpand all lines: python-pro-data-1/zakladni-dotazy/zakladni-dotazy.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -128,7 +128,7 @@ Nyní si vyzkoušíme jednu z hlavních prací datového analytika, a to je **ps
128
128
129
129
#### Výběr sloupců
130
130
131
-
Již jsme si říkali, že ne vždy nás zajímají všechna data. Sloupce již umíme vybrat pomocí funkce `loc`. Funkce `loc` je praktická, pokud vybíráme konkrétní řádky a k nim nějaké konkrétní sloupce. Pokud ale chceme vybrat jen sloupec a zachovat všechny řádky, zpravidla použijeme výběr sloupců pomocí hranatých závorek. Zápis připomíná práci se seznamy - hranatou závorku napíšeme přímo za název proměnné, kde máme uložený `DataFrame`, a do ní vepíšeme název sloupce, který nás zajímá.
131
+
Již jsme si říkali, že ne vždy nás zajímají všechna data. Řádky již umíme vybrat pomocí funkce `loc`. Funkce `loc` je praktická, pokud vybíráme konkrétní řádky a k nim nějaké konkrétní sloupce. Dále si zopakujme, že pokud chceme vybrat jen sloupec a zachovat všechny řádky, zpravidla použijeme výběr sloupců pomocí hranatých závorek.
0 commit comments