Pandas-ը տվյալների վերլուծության հսկայական շրջանակ է և ունի բազմաթիվ ներկառուցված մեթոդներ: Այն թույլ է տալիս մեզ լուծել նույնիսկ կոնկրետ առաջադրանքներ՝ առանց մեծ քանակությամբ կոդ գրելու դիմելու:

Այսօր մենք կդիտարկենք պանդաների մի քանի շատ հարմար, բայց միևնույն ժամանակ ոչ միանշանակ մեթոդներ.

  • կույտ
  • set_option
  • ներդիր

Այսպիսով, եկեք սկսենք.

Նախ եկեք ստեղծենք աղյուսակ dfորը պարունակում է.

  • քաղաքի տեղեկատվություն
  • միջին ջերմաստիճանը
  • քամու արագությունը մ/վրկ
import pandas as pd
multi_col = pd.MultiIndex.from_tuples(
    [('Temperature', '°C'),
     ('Wind', 'm/s')]
)
df = pd.DataFrame(columns=multi_col,
                  index=['London', 'Manchester', 'Liverpool'],
                  data=[[5,2], [10, 5], [20, 1]])
df

ԴԵՂ

Այժմ վերաձևակերպենք այս աղյուսակը, որպեսզի տողերը կոտրվեն ոչ միայն ըստ քաղաքի, այլև ըստ չափման տեսակի (Ջերմաստիճան/Քամու արագություն):

Սյունակները կունենան չափման միավորներ, իսկ աղյուսակի բջիջները կունենան համապատասխան արժեքներю

Դրա համար մենք կօգտագործենք stack() մեթոդը: Այն վերադարձնում է փոփոխված տվյալների շրջանակ կամ տող, որն ունի բազմաստիճան ինդեքս, որտեղ յուրաքանչյուր տող բաժանված է մի քանի մասերի:

մակարդակիպարամետր կա stackմեթոդում, որը նշանակում է մակարդակների կուտակում: Մակարդակների ցանկը, որը մենք ցանկանում ենք սյունակի առանցքից շրջել դեպի ինդեքսի առանցքը: Օրինակ, եթե դուք անցնեք միայն 0 մակարդակը, ապա չափերի տեսակները կընկնեն ինդեքսի առանցքի մեջ:

df.stack(level = 0)

Եթե ​​դուք անցնեք ցուցակ [0, 1], ապա սյունակի առանցքից բոլոր մակարդակները կգնան ինդեքս:

df.stack(level = [0, 1])

SET_OPTION

Ամեն անգամ, երբ դուք ուսումնասիրում եք տվյալների մեծ շրջանակ, դուք պետք է գրեք df.head(5)՝ միայն առաջին տողերը ցուցադրելու համար:

Ընդհանուր իրավիճակ. Ես կարծում եմ, այո.

Պանդաների հետ աշխատանքը ավելի հաճելի դարձնելու և կոդի կրկնօրինակումից ազատվելու համար կարող եք օգտագործել set_optionմեթոդը:

set_optionմեթոդը թույլ է տալիս փոխել Pandas-ի ստանդարտ ընտրանքները՝ սեփական անձին հարմարեցնելով որոշակի ասպեկտներ:

Առաջին հերթին խորհուրդ եմ տալիս գրանցել բոլոր անհրաժեշտ կոնֆիգուրացիաները։ Օրինակ:

display_settings = {
    'max_columns': 10,
    'max_rows': 1,
    'precision': 0,
    'show_dimensions': True
}

Դրանից հետո սահմանեք կարգավորումները՝ օգտագործելով set_option:

for op, val in display_settings.items():
  pd.set_option("display.{}".format(op), val)
df

Մենք տեսնում ենք, որ գրվել է միայն մեկ տող, ստորակետից հետո թվեր չկան, իսկ ներքևում կա տվյալների ամբողջական չափը:

Ընտրանքները վերակայելու համար օգտագործեք reset_optionմեթոդը՝

pd.reset_option('all', silent = True)
df

ՆԵՐԴՐԵԼ

Մեկ այլ ընդհանուր առաջադրանք.

Ավելացնել նոր սյունակ մեջտեղում կամ գոյություն ունեցող տվյալների շրջանակի սկզբում:

Այս խնդիրը հաճախ լուծվում է այսպես.

  • Ստեղծեք նոր սյունակ;
  • Ավելացնել տվյալներ դրան;
  • Ձեռքով տեսակավորեք տվյալների շրջանակի սյունակները ցանկալի հերթականությամբ:

Սա կարելի է խուսափել՝ օգտագործելով ներդիրմեթոդը: Այն թույլ է տալիս սյունակ ավելացնել պատշաճ տեղում՝ օգտագործելով սյունակի ինդեքսը:

Օրինակ՝ եկեք նոր սյունակ ավելացնենք Քամու արագությունը կմ/ժ-ով տվյալների շրջանակի սկզբում:

df.insert(0, ('Wind_km', 'km/h'), df[('Wind', 'm/s')]/1000*3600)
df

Նախքան մեկնելը.

Եթե ​​ձեզ դուր է գալիս նման պատմություններ կարդալը և ցանկանում եք աջակցել ինձ, մի մոռացեք ինձ մի քանի ծափ տալ 👏, հետևել ինձ ✅ և այդպիսով ստանալ բոլոր թարմացումները 🔄 նոր հրապարակումների մասին։