logo

Dataanalyse og visualisering med Python

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:

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

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) 

Produksjon:

Dataanalyse og visualisering med Python' title=

Eksempel 2: DataFrame fra en liste med tilpasset indeks og kolonnenavn:

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

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title=

Eksempel 3: DataFrame fra en ordbok:

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

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title=

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.

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 

Produksjon:

hode' loading='lazy' title=
(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 ):

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] 

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title= Dataanalyse og visualisering med Python' loading='lazy' title= Dataanalyse og visualisering med Python' loading='lazy' title=

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:

Dataanalyse og visualisering med Python' loading='lazy' title= Dataanalyse og visualisering med Python' loading='lazy' title=


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:

Dataanalyse og visualisering med Python' loading='lazy' title=

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:

Dataanalyse og visualisering med Python' loading='lazy' title=

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 verdier
  • df.mean() → gjennomsnitt
  • df.max() / df.min() → maks og min verdier
  • df.describe() → rask statistikkoppsummering
Python
# computes various summary statistics excluding NaN values df.describe() # Provides sum of all the values for each column df.sum() 

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title= Dataanalyse og visualisering med Python' loading='lazy' title=

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.

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

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title=

Box Plot

EN  bokstomt  er nyttig for å oppdage uteliggere og forstå dataspredning.

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

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title=

Spredningsplott

EN  spredningsplott  viser sammenhengen mellom to variabler.

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

Produksjon:

Dataanalyse og visualisering med Python' loading='lazy' title=

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


Lag quiz