Panda petuleht andmeteaduse jaoks Python
โก Nutikas kokkuvรตte
Panda spikrid koondavad teeki enimkasutatud kรคsud รผhele lehele. Need on rรผhmitatud รผlesannete kaupa: installimine, seeriate ja andmeraamide loomine, failide importimine, ridade valimine, andmete puhastamine, funktsioonide rakendamine ja tulemuste eksportimine.
Mis on Pandade spikker?
Pandase teek sisaldab sadu funktsioone, kuid igapรคevatรถรถs esineb neist vaid vรคike osa. Pandade spikker on รผhelehekรผljeline teatmik, mis loetleb need kรคsud rรผhmitatud vastavalt nende tรคidetavale รผlesandele.
See hรตlmab seeria ja andmeraami struktuure, failide importimist ja eksportimist, andmete valimist ja jรคrjestamist, vรครคrtuste puhastamist ning funktsioonide rakendamist. Iga allolev jaotis on seotud lรผhikese selgitusega ja kรคivitatava koodiga, seega toimib leht ka meeldetuletusena teie... andmeanalรผรผsi oskus.
๐ Laadige petulehe PDF alla siit
Kuidas Pandasid installida ja importida
Pandad seadistatakse kahe kรคsuga ja mรตlemad tรถรถtavad terminalis vรตi Jupyter mรคrkmik rakk.
1. samm) Paigaldage Pandas
Kรคivita see รผks kord keskkonnas; lisa sellele mรคrkmiku lahtris hรผรผumรคrk ette.
pip install pandas
2. samm) Impordi pandad
Impordi pakett aliase all pd, mida iga siinne nรคide eeldab.
import pandas as pd
Nรผรผd saate andmete manipuleerimiseks, analรผรผsimiseks ja puhastamiseks kutsuda Panda funktsioone. Allolevates jaotistes on need loetletud jรคrjekorras, milles te neid tavaliselt kasutate.
Panda andmestruktuurid
Pandadel on kaks andmestruktuuri, Seeria ja DataFrameMรตlemad on sildistatud massiivid ja mรตlemad vรตivad sisaldada mis tahes andmetรผรผpi. Ainus erinevus on dimensioonilisus: seeria (Series) on รผhemรตรตtmeline massiiv ja andmeframe (DataFrame) on kahemรตรตtmeline massiiv, mis on ehitatud ... tuim massiivid all.
| tunnusjoon | Seeria | DataFrame |
|---|---|---|
| Padjapรผรผri mรตรตt | รhemรตรตtmeline | Kahemรตรตtmeline |
| Hoiab | รks sildistatud veerg | Palju veerge, segatud andmetรผรผbid |
| Ehitaja | pd.Series() | pd.DataFrame() |
1. Sari
See on รผhemรตรตtmeline sildistatud massiiv. See vรตib sisaldada mis tahes andmetรผรผpi ja None muutub puuduvaks vรครคrtuseks.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. DataFrame
See on kahemรตรตtmeline sildistatud massiiv. See vรตib sisaldada mis tahes andmetรผรผpi ja erineva suurusega veerge.
data = {'RollNo' : [101, 102, 75, 99],
'Name' : ['Mithlesh', 'Ram', 'Rudra', 'Mithlesh'],
'Course' : ['Nodejs', None, 'Nodejs', 'JavaScript']
}
df = pd.DataFrame(data, columns=['RollNo', 'Name', 'Course'])
df.head()
Allolev prinditav spikker koondab samad kรคsud รผhele lehele.
Andmete importimine
Pandad saavad lugeda mitut tรผรผpi faile otse DataFrame'i. Iga allolev lugeja tagastab รผhe ja read_csv() on enimkasutatav.
# Import a CSV file pd pd.read_csv(filename) # Import a TSV file pd.read_table(filename) # Import a Excel file pd pd.read_excel(filename) # Import a SQL table/database pd.read_sql(query, connection_object) # Import a JSON file pd.read_json(json_string) # Import a HTML file pd.read_html(url) # From clipboard to read_table() pd.read_clipboard() # From dict pd.DataFrame(dict)
Valik
Elemente saab valida nende asukoha vรตi indeksi sildi jรคrgi. Sama nurksulgudes sรผntaks valib read, veerud ja sektorid mรตlemast struktuurist.
1. Sari
# Accessing one element from Series s['D'] # Accessing all elements between two given indices s['A':'C'] # Accessing all elements from starting till given index s[:'C'] # Accessing all elements from given index till end s['B':]
2. DataFrame
# Accessing one column df df['Name'] # Accessing rows from after given row df[1:] # Accessing till before given row df[:1] # Accessing rows between two given rows df[1:2]
Valimine Boole'i โโindekseerimise ja seadistuse jรคrgi
Kasutama iloc ja iat tรคisarvuliste positsioonide jaoks ja loc ja at siltide jaoks.
1. Positsiooni jรคrgi
df.iloc[0, 1] df.iat[0, 1]
2. Sildi jรคrgi
df.loc[[0], ['Name']]
3. Sildi/positsiooni jรคrgi
df.loc[2] # Both are same
df.iloc[2]
4. Boole'i โโindekseerimine
Boole'i โโmask sรคilitab ainult read, mille tingimus on True. Teises nรคites lisatakse NOT-operaator. ~, seega tagastab see ka vรครคrtused, mis ei ole suuremad kui 1.
# Series s where value is > 1 s[(s > 0)] # Series s where value is <-2 or >1 s[(s < -2) | ~(s > 1)] # Use filter to adjust DataFrame df[df['RollNo']>100] # Set index a of Series s to 6 s['D'] = 10 s.head()
Andmete puhastamine
eest Python petulehtede andmete puhastamise eesmรคrgil saate teha jรคrgmisi toiminguid:
- Nimeta veerud รผmber, kasutades
rename()meetod. - Vรครคrtuste vรคrskendamine, kasutades
at[]oriat[]meetod teatud elementidele juurdepรครคsuks ja nende muutmiseks. - Looge seeriast vรตi DataFrame'ist koopia, kasutades funktsiooni
copy()meetod. - Kontrollige NULL-vรครคrtusi, kasutades
isnull()meetodit ja eemaldage need, kasutadesdropna()meetod. - Kontrollige duplikaatvรครคrtusi, kasutades
duplicated()meetod. Vabastage need, kasutadesdrop_duplicates()meetod. - Asendage NULL-vรครคrtused, kasutades
fillna()meetod mรครคratud vรครคrtusega. - Asendage vรครคrtused, kasutades
replace()meetod. - Sorteeri vรครคrtusi, kasutades
sort_values()meetod. - Jรคrjesta vรครคrtused, kasutades
rank()meetod.
# Renaming columns df.columns = ['a','b','c'] df.head() # Mass renaming of columns df = df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}) # Or use this edit in same DataFrame instead of in copy df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}, inplace=True) df.head() # Counting duplicates in a column df.duplicated(subset='Name') # Removing entire row that has duplicate in given column df.drop_duplicates(subset=['Name']) # You can choose which one keep - by default is first df.drop_duplicates(subset=['Name'], keep='last') # Checks for Null Values s.isnull() # Checks for non-Null Values - reverse of isnull() s.notnull() # Checks for Null Values df df.isnull() # Checks for non-Null Values - reverse of isnull() df.notnull() # Drops all rows that contain null values df.dropna() # Drops all columns that contain null values df.dropna(axis=1) # Replaces all null values with 'Guru99' df.fillna('Guru99') # Replaces all null values with the mean s.fillna(s.mean()) # Converts the datatype of the Series to float s.astype(float) # Replaces all values equal to 6 with 'Six' s.replace(6,'Six') # Replaces all 2 with 'Two' and 6 with 'Six' s.replace([2,6],['Two','Six']) # Drop from rows (axis=0) s.drop(['B', 'D']) # Drop from columns(axis=1) df.drop('Name', axis=1) # Sort by labels with axis df.sort_index() # Sort by values with axis df.sort_values(by='RollNo') # Ranking entries df.rank() # s1 is pointing to same Series as s s1 = s # s_copy of s, but not pointing same Series s_copy = s.copy() # df1 is pointing to same DataFrame as df df1 = s # df_copy of df, but not pointing same DataFrame df_copy = df.copy()
Pange tรคhele, et s1 = s loob samale objektile ainult teise nime, mitte kunagi koopiat โ seepรคrast copy() jรคrgneb sellele.
Teabe otsimine
Teabe saamiseks saate teha jรคrgmisi toiminguid:
- Kasuta
shapeatribuut ridade ja veergude arvu saamiseks. - Kasuta
head()ortail()meetod esimese vรตi viimase paari rea valimi saamiseks. - Kasuta
info(),describe()ordtypesmeetod andmetรผรผbi, arvu, keskmise, standardhรคlbe, miinimum- ja maksimumvรครคrtuste kohta teabe saamiseks. - Kasuta
count(),min(),max(),sum(),mean()jamedian()meetodid vรครคrtuste kohta konkreetse statistilise teabe saamiseks. - Kasuta
loc[]meetod rea saamiseks. - Kasuta
groupby()meetod GROUP BY funktsiooni rakendamiseks sarnaste vรครคrtuste rรผhmitamiseks DataFrame'i veerus.
1. Pรตhiandmed
# Counting all elements in Series len(s) # Counting all elements in DataFrame len(df) # Prints number of rows and columns in dataframe df.shape # Prints first 10 rows by default, if no value set df.head(10) # Prints last 10 rows by default, if no value set df.tail(10) # For counting non-Null values column-wise df.count() # For range of index df df.index # For name of attributes/columns df.columns # Index, Data Type and Memory information df.info() # Datatypes of each column df.dtypes # Summary statistics for numerical columns df.describe()
2. Kokkuvรตte
# For adding all values column-wise df.sum() # For min column-wise df.min() # For max column-wise df.max() # For mean value in number column df.mean() # For median value in number column df.median() # Count non-Null values s.count() # Count non-Null values df.count() # Return Series of given column df['Name'].tolist() # Name of columns df.columns.tolist() # Creating subset df[['Name', 'Course']] # Return number of values in each group df.groupby('Name').count()
Funktsioonide rakendamine
apply() lรผkkab funktsiooni iga vรครคrtuse peale. Joondusreeglid otsustavad seejรคrel, mis juhtub, kui kahel objektil on รผhine ainult osa oma indeksist.
# Define function f = lambda x: x*5 # Apply this function on given Series - For each value s.apply(f) # Apply this function on given DataFrame - For each value df.apply(f)
1. Siseandmete joondamine
# NA values for indices that don't overlap s2 = pd.Series([8, -1, 4], index=['A', 'C', 'D']) s + s2
2. Aritmeetika Operatรคitmismeetoditega
# Fill values that don't overlap
s.add(s2, fill_value=0)
3. Filtreeri, sorteeri ja rรผhmita
Neid funktsioone saab kasutada filtreerimiseks, sortimiseks ja rรผhmitamiseksping Seeria- ja DataFrame-objektid.
# Filter rows where column is greater than 100 df[df['RollNo']>100] # Filter rows where 70 < column < 101 df[(df['RollNo'] > 70) & (df['RollNo'] < 101)] # Sorts values in ascending order s.sort_values() # Sorts values in descending order s.sort_values(ascending=False) # Sorts values by RollNo in ascending order df.sort_values('RollNo') # Sorts values by RollNo in descending order df.sort_values('RollNo', ascending=False)
Andmete eksportimine
Iga allolev kirjutaja peegeldab importiva osa lugejat, seega saab fail edasi-tagasi liikuda ilma lisatรถรถriistadeta.
# Export as a CSV file df df.to_csv(filename) # Export as a Excel file df df.to_excel(filename) # Export as a SQL table df df.to_sql(table_name, connection_object) # Export as a JSON file df.to_json(filename) # Export as a HTML table df.to_html(filename) # Write to the clipboard df.to_clipboard()
Colab of Cheat Sheet
Iga siinne kรคsk on kรคivitatav kaasasolevas mรคrkmikus: Panda petuleht โ Python jaoks Data Science.ipynb.

