Python este folosit pe scară largă ca limbaj de analiză a datelor datorită bibliotecilor și instrumentelor sale solide pentru gestionarea datelor. Printre aceste biblioteci se numără Pandas, care ușurează manipularea și analiza de explorare dată. vom folosi panda pentru a analiza un set de date numit Country-data.csv de la Kaggle. În timp ce lucrăm cu aceste date, introducem și câteva concepte importante în Pandas.
1. Instalare
Cel mai simplu mod de a instala panda este să folosești pip:
Pythonpip install pandas
sau Descărcați-l de pe Aici .
2. Crearea unui DataFrame în Pandas
O DataFrame este o structură de date sub formă de tabel în Pandas, care are date stocate în rânduri și coloane. Un DataFrame poate fi creat prin trecerea mai multor obiecte Python Series în DataFrame clasa ( pd.DataFrame() ) folosind pd.Series metodă. În acest exemplu sunt utilizate două obiecte Series: s1 ca primul rând și s2 ca al doilea rând.
Exemplul 1: Crearea DataFrame din Series:
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)
Ieșire:
Exemplul 2: DataFrame dintr-o listă cu index personalizat și nume de coloane:
Pythondataframe1 = pd.DataFrame([[1 2] ['Ashish' 'Sid']] index=['r1' 'r2'] columns=['c1' 'c2']) print(dataframe1)
Ieșire:
Exemplul 3: DataFrame dintr-un dicționar:
Pythondataframe2 = pd.DataFrame({ 'c1': [1 'Ashish'] 'c2': [2 'Sid'] }) print(dataframe2)
Ieșire:
3. Importarea datelor cu Pandas
Primul pas este să citiți datele. În cazul nostru, datele sunt stocate ca fișier CSV (Comma-Separated Values) în care fiecare rând este separat printr-o linie nouă și fiecare coloană printr-o virgulă. Pentru a putea lucra cu datele în Python este necesar să citiți csv fişier într-un 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
Ieșire:
(167 10)4. Indexarea DataFrames-urilor cu Pandas
Pandas oferă capabilități puternice de indexare. Puteți indexa DataFrames folosind ambele bazată pe poziție şi bazate pe etichete metode.
Indexarea bazată pe poziție (utilizarea 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]
Ieșire:
Indexarea bazată pe etichete (utilizarea loc ):
Indexarea poate fi lucrată cu etichete folosind panda.DataFrame.loc metodă care permite indexarea folosind etichete în loc de poziții.
Exemple:
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::]
Ieșire:
Cele de mai sus nu arată de fapt mult diferit de df.iloc[0:5:]. Acest lucru se datorează faptului că, în timp ce etichetele de rând pot lua orice valoare, etichetele noastre de rând se potrivesc exact cu pozițiile. Dar etichetele coloanelor pot face lucrurile mult mai ușor atunci când lucrați cu date.
Exemplu:
Python# Prints the first 5 rows of Time period # value df.loc[:5'child_mort']
Ieșire:
5. DataFrame Math cu Pandas
Pandas facilitează efectuarea de operații matematice asupra datelor stocate în cadre de date. Operațiunile care pot fi efectuate pe panda sunt vectorizate, ceea ce înseamnă că sunt rapide și se aplică automat tuturor elementelor, fără a utiliza bucle.
Exemplu - Matematică pe coloane:
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
Ieșire:
Funcții statistice în Pandas:
javafx pe eclipse
Calculul cadrelor de date se poate face folosind funcțiile statistice ale instrumentelor Pandas. Putem folosi funcții precum:
df.sum()→ suma valorilordf.mean()→ mediedf.max()/df.min()→ valorile maxime și minimedf.describe()→ rezumat rapid al statisticilor
# computes various summary statistics excluding NaN values df.describe() # Provides sum of all the values for each column df.sum()
Ieșire:
6. Vizualizarea datelor cu Pandas și Matplotlib
Pandas este foarte ușor de folosit Matplotlib o bibliotecă puternică folosită pentru crearea de diagrame și diagrame de bază. Cu doar câteva linii de cod ne putem vizualiza datele și le putem înțelege mai bine. Mai jos sunt câteva exemple simple pentru a vă ajuta să începeți să complotați folosind Pandas și Matplotlib:
Python# Import the library first import matplotlib.pyplot as plt
Histogramă
O histogramă afișează distribuția valorilor într-o coloană.
Pythondf['income'].hist(bins=10) plt.title('Histogram of Income') plt.xlabel('Income Value') plt.ylabel('Frequency') plt.show()
Ieșire:
Box Plot
O box plot este util pentru a detecta valori aberante și pentru a înțelege răspândirea datelor.
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()
Ieșire:
Graficul de dispersie
O diagramă de dispersie arată relația dintre două variabile.
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()
Ieșire:
Articol înrudit:
- Pandas Introducere
- Trasarea grafică în Python
- Lucrul cu fișiere csv în Python
- Pandas DataFrame
- Introducere în Matplotlib
- Histograma - Tipuri de definiții Grafic și exemple
- Box Plot
- Graficul de dispersie