Python er mye brukt som dataanalysespråk på grunn av de robuste bibliotekene og verktøyene for administrasjon av data. Blant disse bibliotekene er Pandas som gjør enklere datautforskning manipulering og analyse. vi vil bruke Pandaer å analysere et datasett kalt Country-data.csv fra Kaggle. Mens vi jobber med disse dataene, introduserer vi også noen viktige konsepter i Pandas.
1. Installasjon
Den enkleste måten å installere pandaer på er å bruke pip:
Pythonpip install pandas
eller last den ned fra her .
2. Opprette en DataFrame i Pandas
EN DataFrame er en tabelllignende datastruktur i Pandas som har data lagret i rader og kolonner. En DataFrame kan opprettes ved å sende flere objekter i python-serien inn i DataFrame klasse ( pd.DataFrame() ) ved å bruke pd.Series metode. I dette eksemplet brukes to serieobjekter: s1 som første rad og s2 som andre rad.
Eksempel 1: Opprette DataFrame fra serier:
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)
Produksjon:
Eksempel 2: DataFrame fra en liste med tilpasset indeks og kolonnenavn:
Pythondataframe1 = pd.DataFrame([[1 2] ['Ashish' 'Sid']] index=['r1' 'r2'] columns=['c1' 'c2']) print(dataframe1)
Produksjon:
Eksempel 3: DataFrame fra en ordbok:
Pythondataframe2 = pd.DataFrame({ 'c1': [1 'Ashish'] 'c2': [2 'Sid'] }) print(dataframe2)
Produksjon:
3. Importere data med pandaer
Det første trinnet er å lese dataene. I vårt tilfelle lagres dataene som en CSV-fil (Comma-Separated Values) hvor hver rad er atskilt med en ny linje og hver kolonne med et komma. For å kunne jobbe med dataene i Python er det nødvendig å lese csv fil inn i en 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
Produksjon:
(167 10)4. Indeksering av datarammer med pandaer
Pandas gir kraftige indekseringsmuligheter. Du kan indeksere DataFrames ved å bruke begge posisjonsbasert og etikettbasert metoder.
Posisjonsbasert indeksering (ved hjelp av 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]
Produksjon:
Etikettbasert indeksering (Bruk loc ):
Indeksering kan jobbes med etiketter ved å bruke pandas.DataFrame.loc metode som gjør det mulig å indeksere ved å bruke etiketter i stedet for posisjoner.
Eksempler:
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::]
Produksjon:
Ovennevnte ser faktisk ikke mye annerledes ut enn df.iloc[0:5:]. Dette er fordi selv om radetiketter kan ha alle verdier, samsvarer radetikettene nøyaktig med posisjonene. Men kolonneetiketter kan gjøre ting mye enklere når du arbeider med data.
Eksempel:
Python# Prints the first 5 rows of Time period # value df.loc[:5'child_mort']
Produksjon:
5. DataFrame Math med pandaer
Pandas gjør det enklere å utføre matematiske operasjoner på dataene som er lagret i datarammer. Operasjonene som kan utføres på pandaer er vektoriserte, noe som betyr at de er raske og gjelder automatisk for alle elementer uten å bruke looper.
Eksempel - kolonnemessig matematikk:
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
Produksjon:
Statistiske funksjoner i pandaer:
int å doble
Beregning av datarammer kan gjøres ved å bruke statistiske funksjoner til pandas-verktøy. Vi kan bruke funksjoner som:
df.sum()→ summen av verdierdf.mean()→ gjennomsnittdf.max()/df.min()→ maks og min verdierdf.describe()→ rask statistikkoppsummering
# computes various summary statistics excluding NaN values df.describe() # Provides sum of all the values for each column df.sum()
Produksjon:
6. Datavisualisering med Pandas og Matplotlib
Pandaer er veldig enkle å bruke med Matplotlib et kraftig bibliotek som brukes til å lage grunnleggende plott og diagrammer. Med bare noen få linjer med kode kan vi visualisere dataene våre og forstå dem bedre. Nedenfor er noen enkle eksempler for å hjelpe deg med å komme i gang med plotting ved å bruke Pandas og Matplotlib:
Python# Import the library first import matplotlib.pyplot as plt
Histogram
Et histogram viser fordelingen av verdier i en kolonne.
Pythondf['income'].hist(bins=10) plt.title('Histogram of Income') plt.xlabel('Income Value') plt.ylabel('Frequency') plt.show()
Produksjon:
Box Plot
EN bokstomt er nyttig for å oppdage uteliggere og forstå dataspredning.
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()
Produksjon:
Spredningsplott
EN spredningsplott viser sammenhengen mellom to variabler.
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()
Produksjon:
Relatert artikkel:
- Pandas introduksjon
- Grafplotting i Python
- Arbeide med csv-filer i Python
- Pandas DataFrame
- Introduksjon til Matplotlib
- Histogram - Definisjonstyper Graf og eksempler
- Box Plot
- Spredningsplott