Како преименовати Панде колоне [4 Examples]

Преименовање колона у пандас оквиру података је уобичајена операција. Научите четири различите методе за преименовање колона панда.

Пандас је популарна Питхон библиотека за анализу података. Подаци које треба да анализирамо често су доступни у различитим форматима, укључујући цсв и тсв датотеке, релационе базе података и још много тога. И потребно је да извршите неке прелиминарне провере података, обрадите недостајуће вредности и припремите податке за даљу анализу.

Са пандама можете:

  • Убаците податке из различитих извора
  • Истражите скуп података и рукујте вредностима које недостају у њему
  • Анализирајте скуп података да бисте стекли увид

За све пројекте анализе података, често ћете креирати оквире података из Питхон структура података као што је речник. Или ћете читати податке из других извора, као што је цсв датотека у оквир података.

Оквир података је основна структура података у пандама. Садржи записе дуж редова и различита поља или атрибуте дуж колона.

Међутим, можда ћете морати да преименујете називе колона — да бисте их учинили описнијим и побољшали читљивост. Овде ћете научити четири различита начина за преименовање колона. Почнимо!

Креирање Пандас ДатаФраме-а

Можете пратити водич у окружењу Јупитер нотебоок рачунара са инсталираним пандама. Или можете пратити на Гоогле Цолаб-у.

Прво ћемо креирати пандас датафраме и радити са њим до краја упутства.

  Како да организујете своју Спотифи библиотеку

Ево речника боок_дицт:

books_dict = {
    "one": [
        "Atomic Habits",
        "His Dark Materials",
        "The Midnight Library",
        "The Broken Earth",
        "Anxious People",
    ],
    "two": [
        "James Clear",
        "Philip Pullman",
        "Matt Haig",
        "N.K.Jemisin",
        "Fredrik Backman",
    ],
    "three": ["Nonfiction", "Fantasy", "Magical Realism", "Fantasy", "Fiction"],
    "four": [4, 5, 3, 5, 4],
}

Прво ћемо увести панде, а затим креирати оквир података дф из боокс_дицт.

import pandas as pd

Напомена: Наставићемо да се враћамо на следећу ћелију кода – да бисмо направили почетну верзију оквира података – пре преименовања колона.

df = pd.DataFrame(books_dict)

Можемо користити дф.хеад() да добијемо првих неколико редова оквира података дф. Подразумевано, враћа првих пет редова. Овде дф има само пет редова; тако да када користимо дф.хеад() добијамо цео оквир података.

df.head()

Видимо да су имена колона тренутно кључеви речника. Али ово није баш описно. Па хајде да их преименујемо! 👩‍🏫

Методе за преименовање колона у Пандас

Сада погледајмо различите методе за преименовање колона у пандама:

  • Постављање атрибута цолумнс оквира података на листу нових назива колона
  • Коришћење методе ренаме() на оквиру података
  • Коришћење стр.реплаце за преименовање једне или више колона
  • Коришћење методе сет_акис() на оквиру података

Подешавање колона Атрибут

За било који оквир података, атрибут цолумнс садржи листу назива колона:

df.columns
# Index(['one', 'two', 'three', 'four'], dtype="object")

Преименујмо колоне да означимо шта свако поље представља, а затим позовимо дф.хеад() да видимо резултате:

df.columns = ['Title','Author','Genre','Rating']
df.head()

Коришћење методе ренаме().

Да бисте преименовали колоне у пандама, можете користити методу ренаме() са синтаксом:

df.rename(column={mapping})

Ово мапирање може бити речник следећег облика:

{'old_col_name_1':'new_col_name_1', 'old_col_name_2':'new_col_name_2',...,
'old_col_name_n':'new_col_name_n'}

Хајде да направимо дф из речника боокс_дицт:

df = pd.DataFrame(books_dict)

Користећи методу ренаме() са горњом синтаксом, добијамо дф_1. Што је копија оквира података са преименованим колонама.

df_1 = df.rename(columns={'one':'Title','two':'Author','three':'Genre','four':'Rating'})
df_1.head()

Дакле, називи колона дф_1 су измењени:

  Вештине управљања пројектима које ће вам унапредити каријеру

Али имена колона оригиналног оквира података дф се не мењају:

df.head()

Пошто нам овај метод омогућава да обезбедимо мапирање између старих и нових назива колона, можемо га користити за преименовање и једне и више колона.

Преименујте колоне на месту

Шта ако желите да измените постојећи оквир података — без прављења нове копије?

Да бисте то урадили, можете поставити инплаце једнако на Труе у позиву методе.

df.rename(columns={'one':'Title','two':'Author','three':'Genre','four':'Rating'},inplace=True)
df.head()

Ово ће преименовати колоне оригиналног оквира података дф:

До сада смо видели како да:

  • Преименујте колоне тако што ћете обезбедити речник који мапира имена старих колона у називе нових колона
  • Преименујте колоне на месту без прављења новог оквира података

Методу преименовања можете користити и на други начин.

Још један приступ преименовању колона

Преименујмо колоне тако да буду у великим словима:

df = pd.DataFrame(books_dict)
df.columns = ['TITLE','AUTHOR','GENRE','RATING']
df.head()

Датафраме дф сада изгледа овако:

Претпоставимо да желимо да променимо називе сваког од ових колона тако да буду у наслову. Уместо да обезбедимо речник за свако име колоне, можемо да наведемо позив функције или методе за објекат као што је приказано:

df.rename(str.title,axis="columns",inplace=True)
df.head()

Овде постављамо осовину на ‘колоне’ и користимо стр.титле да конвертујемо сва имена колона у велика и мала слова.

Коришћење стр.реплаце() на низовима назива колоне

Као и увек, покрените следећу ћелију кода да бисте креирали оквир података из речника:

df = pd.DataFrame(books_dict)

У Питхон-у бисте користили методу реплаце() са синтаксом стр.реплаце(тхис, витх_тхис) да бисте добили копију стринга са потребним изменама. Ево примера:

>>> str1 = 'Marathon'
>>> str1.replace('Mara','Py')
'Python'

Знате да атрибут цолумнс садржи листу стрингова који садрже називе колона. Дакле, можете позвати стр.реплаце(‘олд_цолумн_наме’,’нев_цолумн_наме’) овако:

df.columns = df.columns.str.replace('one','Title')
df.head()

Овде смо само колону „један“ преименовали у „Наслов“, тако да су називи осталих колона остали непромењени.

  Нема опције „Покрени са графичким процесором“ у контекстуалном менију десног клика

Сада преименујмо остале колоне користећи исти приступ:

df.columns = df.columns.str.replace('two','Author')
df.columns = df.columns.str.replace('three','Genre')
df.columns = df.columns.str.replace('four','Rating')
df.head()

Овај метод преименовања колона је од помоћи када треба да преименујете само једну или мали подскуп колона.

Коришћење методе сет_акис().

Вратимо се на почетну верзију оквира података:

df = pd.DataFrame(books_dict)

Такође можете користити метод сет_акис() да бисте преименовали колоне. Синтакса је следећа:

df.set_axis([list_of_column_names],axis="columns")

Подразумевано метода сет_акис() враћа копију оквира података. Али ако желите да измените оквир података на месту, можете поставити копију на Фалсе.

df = df.set_axis(['Title','Author','Genre','Rating'],axis="columns",copy=False)
df.head()

Закључак

Ево прегледа различитих метода за преименовање колона у пандас оквиру података:

  • За пример оквира података дф, атрибут колоне дф.цолумнс је листа назива колона. Да бисте преименовали колоне, можете поставити овај атрибут на листу нових назива колона.
  • Метода ренаме() за преименовање колона ради са синтаксом: дф.ренаме(цолумнс={маппинг}) где се мапирање односи на пресликавање старих назива колона у имена нових колона. Такође можете користити методу ренаме() тако што ћете навести функцију која ће се применити на све називе колона: дф.ренаме(позив функције или методе, акис=’цолумнс’).
  • Баш као што користите методу реплаце() на Питхон стрингу, можете користити дф.цолумнс.стр.реплаце(‘олд_цолумн_наме’, ‘нев_цолумн_наме’) да замените имена колона.
  • Други приступ преименовању у колонама је коришћење методе сет_акис са синтаксом: дф.сет_акис(лист_оф_цол_намес,акис=’цолумнс’).

То је све за овај водич! Погледајте листу свезака за сарадњу за анализу података.