Python je široce používán jako jazyk pro analýzu dat díky svým robustním knihovnám a nástrojům pro správu dat. Mezi tyto knihovny patří Pandas, které usnadňují manipulaci s průzkumem dat a analýzu. budeme používat pandy k analýze datové sady tzv Země-data.csv od Kaggle. Při práci s těmito daty také zavádíme některé důležité koncepty v Pandas.
1. Instalace
Nejjednodušší způsob, jak nainstalovat pandy, je použít pip:
Pythonpip install pandas
nebo si jej stáhněte z zde .
2. Vytvoření datového rámce v Pandas
A DataFrame je datová struktura podobná tabulce v Pandas, která má data uložená v řádcích a sloupcích. DataFrame lze vytvořit předáním více objektů python Series do DataFrame třída ( pd.DataFrame() ) pomocí pd.Series metoda. V tomto příkladu jsou použity dva objekty Series: s1 jako první řada a s2 jako druhá řada.
Příklad 1: Vytvoření DataFrame ze série:
Pythonimport pandas as pd # Creating two Series: s1 (numbers) and s2 (names) s1 = pd.Series([1 2]) s2 = pd.Series(['Ashish' 'Sid']) # Creating DataFrame by combining Series as rows dataframe = pd.DataFrame([s1 s2]) # Displaying the DataFrame print(dataframe)
výstup:
Příklad 2: DataFrame ze seznamu s vlastním indexem a názvy sloupců:
Pythondataframe1 = pd.DataFrame([[1 2] ['Ashish' 'Sid']] index=['r1' 'r2'] columns=['c1' 'c2']) print(dataframe1)
výstup:
Příklad 3: DataFrame ze slovníku:
Pythondataframe2 = pd.DataFrame({ 'c1': [1 'Ashish'] 'c2': [2 'Sid'] }) print(dataframe2)
výstup:
3. Import dat pomocí Pandas
Prvním krokem je načtení dat. V našem případě jsou data uložena jako soubor CSV (Comma-Separated Values), kde je každý řádek oddělen novým řádkem a každý sloupec čárkou. Aby bylo možné s daty v Pythonu pracovat, je potřeba načíst csv soubor do Pandas DataFrame.
Pythonimport pandas as pd # Read Country-data.csv into a DataFrame df = pd.read_csv('Country-data.csv') # Prints the first 5 rows of a DataFrame as default df.head() # Prints no. of rows and columns of a DataFrame df.shape
výstup:
(167 10)4. Indexování datových rámců pomocí Pandas
Pandas poskytuje výkonné možnosti indexování. DataFrames můžete indexovat pomocí obou na základě polohy a na základě štítků metody.
Indexování na základě pozice (pomocí iloc ):
# prints first 5 rows and every column which replicates df.head() df.iloc[0:5:] # prints entire rows and columns df.iloc[::] # prints from 5th rows and first 5 columns df.iloc[5::5]
výstup:
Indexování na základě štítků (pomocí loc ):
S indexováním lze pracovat se štítky pomocí pandas.DataFrame.loc metoda, která umožňuje indexovat pomocí štítků místo pozic.
Příklady:
Python# prints first five rows including 5th index and every columns of df df.loc[0:5:] # prints from 5th rows onwards and entire columns df.loc[5::]
výstup:
Výše uvedené se ve skutečnosti příliš neliší od df.iloc[0:5:]. Je to proto, že zatímco popisky řádků mohou nabývat libovolných hodnot, naše štítky řádků přesně odpovídají pozicím. Ale popisky sloupců mohou práci s daty značně usnadnit.
Příklad:
Python# Prints the first 5 rows of Time period # value df.loc[:5'child_mort']
výstup:
5. DataFrame Math s Pandas
Pandas usnadňuje provádění matematických operací s daty uloženými v datových rámcích. Operace, které lze na pandách provádět, jsou vektorizované, což znamená, že jsou rychlé a aplikují se automaticky na všechny prvky bez použití smyček.
Příklad – sloupcová matematika:
Python# Adding 5 to every element in column A df['child_mort'] = df['child_mort'] + 5 # Multiplying values in column B by 10 df['exports'] = df['exports'] * 10 df
výstup:
Statistické funkce v Pandas:
alter add column oracle
Výpočet datových rámců lze provést pomocí statistických funkcí nástrojů pandas. Můžeme použít funkce jako:
df.sum()→ součet hodnotdf.mean()→ průměrdf.max()/df.min()→ maximální a minimální hodnotydf.describe()→ rychlý souhrn statistik
# computes various summary statistics excluding NaN values df.describe() # Provides sum of all the values for each column df.sum()
výstup:
6. Vizualizace dat pomocí Pandas a Matplotlib
Pandas se velmi snadno používá Matplotlib výkonná knihovna používaná pro vytváření základních grafů a grafů. Pomocí několika řádků kódu můžeme vizualizovat naše data a lépe jim porozumět. Níže uvádíme několik jednoduchých příkladů, které vám pomohou začít s vykreslováním pomocí Pandas a Matplotlib:
Python# Import the library first import matplotlib.pyplot as plt
Histogram
Histogram zobrazuje rozložení hodnot ve sloupci.
Pythondf['income'].hist(bins=10) plt.title('Histogram of Income') plt.xlabel('Income Value') plt.ylabel('Frequency') plt.show()
výstup:
Box Plot
A krabicová zápletka je užitečný k detekci odlehlých hodnot a pochopení šíření dat.
Pythondf = df.head(10) plt.figure(figsize=(20 6)) # Increase width to make x-axis labels clearer df.boxplot(column='imports' by='country') plt.title('Boxplot by Country') plt.suptitle('') # Removes default title plt.xlabel('Country') plt.ylabel('Imports') plt.xticks(rotation=45) # Optional: Rotate x-axis labels for better visibility plt.tight_layout() # Adjust layout to avoid clipping plt.show()
výstup:
Bodový spiknutí
A bodový graf ukazuje vztah mezi dvěma proměnnými.
Pythonx = df['health'] y = df['life_expec'] plt.scatter(x y label='Data Points' color='m' marker='*' s=30) plt.xlabel('Health') plt.ylabel('Life Expectancy') plt.title('Scatter Plot of Health vs Life Expectancy') plt.legend() plt.show()
výstup:
Související článek:
- Představení pandy
- Vykreslování grafů v Pythonu
- Práce se soubory csv v Pythonu
- Pandas DataFrame
- Úvod do Matplotlib
- Histogram - Definice typů Graf a příklady
- Box Plot
- Bodový spiknutí