Python se široko uporablja kot jezik za analizo podatkov zaradi robustnih knjižnic in orodij za upravljanje podatkov. Med temi knjižnicami je Pandas, ki olajša manipulacijo in analizo raziskovanja podatkov. bomo uporabili Pande za analizo nabora podatkov, imenovanega Country-data.csv od Kaggle. Med delom s temi podatki uvajamo tudi nekaj pomembnih konceptov v Pandas.
1. Namestitev
Najlažji način za namestitev pand je uporaba pipa:
Pythonpip install pandas
ali ga prenesite iz tukaj .
2. Ustvarjanje DataFrame v Pandas
A DataFrame je tabeli podobna podatkovna struktura v Pandas, ki ima podatke shranjene v vrsticah in stolpcih. DataFrame je mogoče ustvariti s posredovanjem več objektov serije python v DataFrame razred ( pd.DataFrame() ) z uporabo pd.Series metoda. V tem primeru sta uporabljena dva predmeta serije: s1 kot prva vrsta in s2 kot druga vrsta.
Primer 1: Ustvarjanje DataFrame iz serije:
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)
Izhod:
Primer 2: DataFrame s seznama z indeksom po meri in imeni stolpcev:
Pythondataframe1 = pd.DataFrame([[1 2] ['Ashish' 'Sid']] index=['r1' 'r2'] columns=['c1' 'c2']) print(dataframe1)
Izhod:
Primer 3: DataFrame iz slovarja:
Pythondataframe2 = pd.DataFrame({ 'c1': [1 'Ashish'] 'c2': [2 'Sid'] }) print(dataframe2)
Izhod:
3. Uvažanje podatkov s programom Pandas
Prvi korak je branje podatkov. V našem primeru so podatki shranjeni kot datoteka CSV (vrednosti, ločene z vejico), kjer je vsaka vrstica ločena z novo vrstico in vsak stolpec z vejico. Da bi lahko delali s podatki v Pythonu, je potrebno prebrati csv datoteka v 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
Izhod:
(167 10)4. Indeksiranje DataFrames s Pandas
Pandas ponuja zmogljive zmožnosti indeksiranja. DataFrames lahko indeksirate z uporabo obeh na podlagi položaja in na podlagi etikete metode.
Indeksiranje na podlagi položaja (uporaba 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]
Izhod:
Indeksiranje na podlagi oznak (uporaba loc ):
Indeksiranje je mogoče izvajati z oznakami z uporabo pandas.DataFrame.loc metoda, ki omogoča indeksiranje z uporabo oznak namesto pozicij.
Primeri:
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::]
Izhod:
Zgoraj se dejansko ne razlikuje veliko od df.iloc[0:5:]. To je zato, ker medtem ko lahko oznake vrstic prevzamejo poljubne vrednosti, se naše oznake vrstic natančno ujemajo s položaji. Toda oznake stolpcev lahko precej olajšajo delo s podatki.
primer:
Python# Prints the first 5 rows of Time period # value df.loc[:5'child_mort']
Izhod:
5. DataFrame Math s Pandas
Pandas olajša izvajanje matematičnih operacij na podatkih, shranjenih v podatkovnih okvirih. Operacije, ki jih je mogoče izvajati na pandah, so vektorizirane, kar pomeni, da so hitre in se samodejno uporabljajo za vse elemente brez uporabe zank.
Primer – matematika po stolpcih:
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
Izhod:
Statistične funkcije v Pandas:
razlika med lisico in volkom
Izračun podatkovnih okvirov je mogoče izvesti z uporabo statističnih funkcij orodij pandas. Uporabimo lahko funkcije, kot so:
df.sum()→ vsota vrednostidf.mean()→ povprečjedf.max()/df.min()→ max in min vrednostidf.describe()→ hiter povzetek statistike
# computes various summary statistics excluding NaN values df.describe() # Provides sum of all the values for each column df.sum()
Izhod:
6. Vizualizacija podatkov s Pandas in Matplotlib
Pandas je zelo enostaven za uporabo Matplotlib zmogljiva knjižnica, ki se uporablja za ustvarjanje osnovnih risb in grafikonov. Z le nekaj vrsticami kode lahko vizualiziramo svoje podatke in jih bolje razumemo. Spodaj je nekaj preprostih primerov, ki vam bodo pomagali začeti risati z uporabo Pandas in Matplotlib:
Python# Import the library first import matplotlib.pyplot as plt
Histogram
Histogram prikazuje porazdelitev vrednosti v stolpcu.
Pythondf['income'].hist(bins=10) plt.title('Histogram of Income') plt.xlabel('Income Value') plt.ylabel('Frequency') plt.show()
Izhod:
Box Plot
A škatlasta parcela je koristen za odkrivanje izstopajočih vrednosti in razumevanje širjenja podatkov.
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()
Izhod:
Razpršeni prikaz
A razpršena ploskev prikazuje razmerje med dvema spremenljivkama.
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()
Izhod:
Sorodni članek:
- Pande Uvod
- Risanje grafov v Pythonu
- Delo z datotekami csv v Pythonu
- Pandas DataFrame
- Uvod v Matplotlib
- Histogram – Definicija Vrste Graf in Primeri
- Box Plot
- Razpršeni prikaz