Analýza dat a vizualizace v Pythonu

Analýza dat a vizualizace v Pythonu

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:

Python
   pip   install   pandas   


nebo si jej stáhněte z  zde .

2. Vytvoření datového rámce v Pandas

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:

Python
   import   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:

Analýza dat a vizualizace v Pythonu

Příklad 2: DataFrame ze seznamu s vlastním indexem a názvy sloupců:

Python
   dataframe1   =   pd  .  DataFrame  ([[  1     2  ]   [  'Ashish'     'Sid'  ]]   index  =  [  'r1'     'r2'  ]   columns  =  [  'c1'     'c2'  ])   print  (  dataframe1  )   

výstup:

Analýza dat a vizualizace v Pythonu

Příklad 3: DataFrame ze slovníku:

Python
   dataframe2   =   pd  .  DataFrame  ({   'c1'  :   [  1     'Ashish'  ]   'c2'  :   [  2     'Sid'  ]   })   print  (  dataframe2  )   

výstup:

Analýza dat a vizualizace v Pythonu

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.

Python
   import   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:

hlava
 (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 ):

Python
   # 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:

Analýza dat a vizualizace v Pythonu Analýza dat a vizualizace v Pythonu Analýza dat a vizualizace v Pythonu

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:

Analýza dat a vizualizace v Pythonu Analýza dat a vizualizace v Pythonu


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:

Analýza dat a vizualizace v Pythonu

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:

Analýza dat a vizualizace v Pythonu

Statistické funkce v Pandas:

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 hodnot
  • df.mean()  → průměr
  • df.max()  /  df.min()  → maximální a minimální hodnoty
  • df.describe()  → rychlý souhrn statistik
Python
   # computes various summary statistics excluding NaN values   df  .  describe  ()   # Provides sum of all the values for each column   df  .  sum  ()   

výstup:

Analýza dat a vizualizace v Pythonu Analýza dat a vizualizace v Pythonu

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.

Python
   df  [  'income'  ]  .  hist  (  bins  =  10  )   plt  .  title  (  'Histogram of Income'  )   plt  .  xlabel  (  'Income Value'  )   plt  .  ylabel  (  'Frequency'  )   plt  .  show  ()   

výstup:

Analýza dat a vizualizace v Pythonu

Box Plot

krabicová zápletka  je užitečný k detekci odlehlých hodnot a pochopení šíření dat.

Python
   df   =   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:

Analýza dat a vizualizace v Pythonu

Bodový spiknutí

bodový graf  ukazuje vztah mezi dvěma proměnnými.

Python
   x   =   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:

Analýza dat a vizualizace v Pythonu

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í


Vytvořit kvíz