Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas

L-ewwel pass meta tibda taħdem ma 'sett ta' dejta ġdid huwa li tifhimha. Sabiex tagħmel dan, għandek bżonn, pereżempju, li ssir taf il-firxiet ta 'valuri aċċettati mill-varjabbli, it-tipi tagħhom, u wkoll issir taf dwar in-numru ta' valuri neqsin.

Il-librerija tal-pandas tagħtina ħafna għodod utli biex inwettqu analiżi tad-dejta esploratorja (EDA). Iżda qabel ma tużahom, normalment ikollok bżonn tibda b'funzjonijiet aktar ġenerali bħal df.describe(). Madankollu, għandu jiġi nnutat li l-kapaċitajiet ipprovduti minn funzjonijiet bħal dawn huma limitati, u l-istadji inizjali tal-ħidma ma 'kwalunkwe sett ta' dejta meta titwettaq EDA ħafna drabi huma simili ħafna għal xulxin.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas

L-awtur tal-materjal li qed nippubblikaw illum jgħid li mhux dilettant li jwettaq azzjonijiet ripetittivi. Bħala riżultat, fit-tfittxija ta 'għodod biex iwettaq malajr u b'mod effiċjenti analiżi tad-dejta esploratorja, huwa sab il-librerija pandas-profiling. Ir-riżultati tal-ħidma tagħha huma espressi mhux fil-forma ta 'ċerti indikaturi individwali, iżda fil-forma ta' rapport HTML pjuttost dettaljat li fih ħafna mill-informazzjoni dwar id-dejta analizzata li jista 'jkollok bżonn tkun taf qabel tibda taħdem aktar mill-qrib magħha.

Hawnhekk se nħarsu lejn il-karatteristiċi tal-użu tal-librerija tal-profil tal-pandas billi tuża s-sett tad-dejta Titanic bħala eżempju.

Analiżi esploratorja tad-dejta bl-użu tal-pandas

Iddeċidejt li nesperimenta bil-profil tal-pandas fuq is-sett tad-dejta Titanic minħabba t-tipi differenti ta 'dejta li fih u l-preżenza ta' valuri neqsin fih. Nemmen li l-librerija tal-pandas-profiling hija speċjalment interessanti f'każijiet fejn id-dejta għadha ma tnaddfitx u teħtieġ aktar ipproċessar skont il-karatteristiċi tagħha. Sabiex twettaq dan l-ipproċessar b'suċċess, trid tkun taf minn fejn tibda u għalxiex tagħti attenzjoni. Dan huwa fejn il-kapaċitajiet ta 'profiling tal-pandas jiġu utli.

L-ewwel, aħna importaw id-dejta u nużaw pandas biex niksbu statistika deskrittiva:

# импорт необходимых пакетов
import pandas as pd
import pandas_profiling
import numpy as np

# импорт данных
df = pd.read_csv('/Users/lukas/Downloads/titanic/train.csv')

# вычисление показателей описательной статистики
df.describe()

Wara li tesegwixxi din il-biċċa kodiċi, int se tikseb dak li jidher fil-figura li ġejja.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Statistika deskrittiva miksuba bl-użu ta 'għodod standard pandas

Għalkemm hawn ħafna informazzjoni utli, ma fihiex dak kollu li jkun interessanti li tkun taf dwar id-dejta taħt studju. Pereżempju, wieħed jista' jassumi li f'qafas tad-dejta, fi struttura DataFrame, hemm 891 linja. Jekk dan jeħtieġ li jiġi ċċekkjat, allura linja oħra ta 'kodiċi hija meħtieġa biex tiddetermina d-daqs tal-qafas. Filwaqt li dawn il-kalkoli mhumiex partikolarment intensivi fir-riżorsi, ir-repetizzjoni tagħhom il-ħin kollu hija marbuta li ħela ta 'ħin li probabbilment jista' jintefaq aħjar biex jitnaddaf id-dejta.

Analiżi esploratorja tad-dejta bl-użu ta' pandas-profiling

Issa ejja nagħmlu l-istess billi tuża pandas-profiling:

pandas_profiling.ProfileReport(df)

L-eżekuzzjoni tal-linja ta 'kodiċi ta' hawn fuq se tiġġenera rapport b'indikaturi esploratorji ta 'analiżi tad-dejta. Il-kodiċi muri hawn fuq se joħroġ id-dejta misjuba, iżda tista 'tagħmilha toħroġ fajl HTML li tista' turi lil xi ħadd, pereżempju.

L-ewwel parti tar-rapport se jkun fiha taqsima Ħarsa ġenerali, li tagħti informazzjoni bażika dwar id-dejta (numru ta’ osservazzjonijiet, numru ta’ varjabbli, eċċ.). Se jkun fih ukoll lista ta 'twissijiet, li tinnotifika lill-analista dwar affarijiet li għandhom jagħtu attenzjoni speċjali għalihom. Dawn it-twissijiet jistgħu jipprovdu ħjiel dwar fejn tista' tiffoka l-isforzi tiegħek għat-tindif tad-dejta.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Taqsima tar-rapport ħarsa ġenerali

Analiżi Varjabbli Esploratorja

Taħt it-taqsima Ħarsa ġenerali tar-rapport tista’ ssib informazzjoni utli dwar kull varjabbli. Dawn jinkludu, fost affarijiet oħra, mapep żgħar li jiddeskrivu d-distribuzzjoni ta 'kull varjabbli.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Dwar il-Varjabbli Numeriku tal-Età

Kif tistgħu taraw mill-eżempju preċedenti, pandas-profiling jagħtina diversi indikaturi utli, bħall-persentaġġ u n-numru ta 'valuri neqsin, kif ukoll il-miżuri tal-istatistika deskrittiva li diġà rajna. Għax Age hija varjabbli numeriku, il-viżwalizzazzjoni tad-distribuzzjoni tagħha fil-forma ta 'istogramma tippermettilna nikkonkludu li għandna distribuzzjoni distorta lejn il-lemin.

Meta titqies varjabbli kategorika, ir-riżultati tal-output huma kemmxejn differenti minn dawk misjuba għal varjabbli numeriku.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Dwar il-varjabbli kategoriku Sess

Jiġifieri, minflok sabet il-medja, il-minimu u l-massimu, il-librerija tal-profil tal-pandas sabet in-numru ta 'klassijiet. Għax Sex — varjabbli binarja, il-valuri tagħha huma rappreżentati minn żewġ klassijiet.

Jekk tixtieq teżamina l-kodiċi bħal jien, tista 'tkun interessat dwar kif eżattament il-librerija tal-profil tal-pandas tikkalkula dawn il-metriċi. Li ssir taf dwar dan, peress li l-kodiċi tal-librerija huwa miftuħ u disponibbli fuq GitHub, mhuwiex daqshekk diffiċli. Peress li jien m'iniex fan kbir li nuża kaxxi suwed fil-proġetti tiegħi, tajt ħarsa lejn il-kodiċi tas-sors tal-librerija. Pereżempju, dan huwa kif jidher il-mekkaniżmu għall-ipproċessar tal-varjabbli numeriċi, rappreżentat mill-funzjoni describe_numeric_1d:

def describe_numeric_1d(series, **kwargs):
    """Compute summary statistics of a numerical (`TYPE_NUM`) variable (a Series).
    Also create histograms (mini an full) of its distribution.
    Parameters
    ----------
    series : Series
        The variable to describe.
    Returns
    -------
    Series
        The description of the variable as a Series with index being stats keys.
    """
    # Format a number as a percentage. For example 0.25 will be turned to 25%.
    _percentile_format = "{:.0%}"
    stats = dict()
    stats['type'] = base.TYPE_NUM
    stats['mean'] = series.mean()
    stats['std'] = series.std()
    stats['variance'] = series.var()
    stats['min'] = series.min()
    stats['max'] = series.max()
    stats['range'] = stats['max'] - stats['min']
    # To avoid to compute it several times
    _series_no_na = series.dropna()
    for percentile in np.array([0.05, 0.25, 0.5, 0.75, 0.95]):
        # The dropna() is a workaround for https://github.com/pydata/pandas/issues/13098
        stats[_percentile_format.format(percentile)] = _series_no_na.quantile(percentile)
    stats['iqr'] = stats['75%'] - stats['25%']
    stats['kurtosis'] = series.kurt()
    stats['skewness'] = series.skew()
    stats['sum'] = series.sum()
    stats['mad'] = series.mad()
    stats['cv'] = stats['std'] / stats['mean'] if stats['mean'] else np.NaN
    stats['n_zeros'] = (len(series) - np.count_nonzero(series))
    stats['p_zeros'] = stats['n_zeros'] * 1.0 / len(series)
    # Histograms
    stats['histogram'] = histogram(series, **kwargs)
    stats['mini_histogram'] = mini_histogram(series, **kwargs)
    return pd.Series(stats, name=series.name)

Għalkemm din il-biċċa ta 'kodiċi tista' tidher pjuttost kbira u kumplessa, fil-fatt hija sempliċi ħafna biex tinftiehem. Il-punt huwa li fil-kodiċi tas-sors tal-librerija hemm funzjoni li tiddetermina t-tipi ta 'varjabbli. Jekk jirriżulta li l-librerija ltaqgħet ma 'varjabbli numeriku, il-funzjoni ta' hawn fuq issib il-metriċi li konna nħarsu lejhom. Din il-funzjoni tuża operazzjonijiet standard tal-pandas biex taħdem ma 'oġġetti tat-tip Series, bħal series.mean(). Ir-riżultati tal-kalkolu huma maħżuna f'dizzjunarju stats. L-istogrammi huma ġġenerati bl-użu ta' verżjoni adattata tal-funzjoni matplotlib.pyplot.hist. L-adattament huwa mmirat biex jiżgura li l-funzjoni tista 'taħdem ma' tipi differenti ta 'settijiet ta' dejta.

Indikaturi ta' korrelazzjoni u data tal-kampjuni studjati

Wara r-riżultati tal-analiżi tal-varjabbli, pandas-profiling, fit-taqsima Korrelazzjonijiet, se juri l-matriċi ta 'korrelazzjoni Pearson u Spearman.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Matriċi ta' korrelazzjoni ta' Pearson

Jekk meħtieġ, tista ', fil-linja ta' kodiċi li tixpruna l-ġenerazzjoni tar-rapport, tissettja l-indikaturi tal-valuri tal-limitu użati meta tikkalkula l-korrelazzjoni. Billi tagħmel dan, tista 'tispeċifika liema saħħa ta' korrelazzjoni hija kkunsidrata importanti għall-analiżi tiegħek.

Fl-aħħarnett, ir-rapport tal-pandas-profiling, fit-taqsima tal-Kampjun, juri, bħala eżempju, biċċa dejta meħuda mill-bidu tas-sett tad-dejta. Dan l-approċċ jista' jwassal għal sorpriżi mhux pjaċevoli, peress li l-ewwel ftit osservazzjonijiet jistgħu jirrappreżentaw kampjun li ma jirriflettix il-karatteristiċi tas-sett kollu tad-dejta.

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas
Taqsima li fiha kampjun ta' data taħt studju

Bħala riżultat, ma nirrakkomandax li tagħti attenzjoni għal din l-aħħar taqsima. Minflok, huwa aħjar li tuża l-kmand df.sample(5), li se tagħżel b'mod każwali 5 osservazzjonijiet mis-sett tad-dejta.

Riżultati ta '

Fil-qosor, il-librerija tal-profili tal-pandas tagħti lill-analista xi kapaċitajiet utli li jkunu utli f'każijiet fejn ikollok bżonn malajr tieħu idea approssimattiva tad-dejta jew tgħaddi rapport ta 'analiżi ta' intelliġenza lil xi ħadd. Fl-istess ħin, ix-xogħol reali bid-dejta, b'kont meħud tal-karatteristiċi tagħha, jitwettaq, bħal mingħajr ma tuża pandas-profiling, manwalment.

Jekk trid tagħti ħarsa lejn kif tidher l-analiżi kollha tad-dejta tal-intelliġenza f'notebook Jupyter wieħed, agħti ħarsa lejn dan proġett tiegħi maħluqa bl-użu nbviewer. U fi dan Tista' ssib il-kodiċi korrispondenti fir-repożitorji GitHub.

Għeżież qarrejja! Fejn tibda tanalizza settijiet ta' data ġodda?

Aċċellera l-analiżi esploratorja tad-dejta billi tuża librerija tal-profili tal-pandas

Sors: www.habr.com

Żid kumment