Python Pandas: как переименовать столбец DataFrame

Pandas.DataFrame.rename () — это функция, которая изменяет имена индексов или столбцов индивидуально с помощью dict, или изменяет имена всех индексов/столбцов с помощью функции. Метод DataFrame.rename () очень полезен, когда нам нужно переименовать некоторые выбранные столбцы, потому что нам нужно указать информацию только для столбцов, которые должны быть переименованы.

Содержание
  1. Pandas Столбец переименования DataFrame
  2. Синтаксис
  3. Параметры
  4. mapper: dict-like or function
  5. Dict-like или преобразования функций, применяемые к значениям этой оси. Используйте средство сопоставления и ось, чтобы указать целевую ось с помощью сопоставителя, или индекс и столбцы.
  6. index: dict-like или function
  7. столбцы: dict-like или function
  8. Альтернатива определению оси (mapper, axis = 1 равно columns = mapper).
  9. axis: int or str
  10. Ось, на которую будет нацеливаться картограф. Это может быть имя оси («индекс», «столбцы») или число (0, 1). По умолчанию используется index.
  11. copy: bool, default True
  12. Кроме того, скопируйте базовые данные.
  13. inplace: bool, по умолчанию False
  14. level: int или имя уровня, по умолчанию Нет
  15. В случае MultiIndex переименовывать метки только на указанном уровне.
  16. errors {‘ignore’, ‘raise’}, по умолчанию ‘ignore’
  17. Если ‘raise’, вызывает KeyError, когда dict-подобный сопоставитель, индекс или столбцы содержат метки, которых нет в индексе преображается. Если «игнорировать», существующие ключи будут переименованы, а дополнительные ключи будут проигнорированы.
  18. Возвращаемое значение
  19. Пример переименования столбца Pandas DataFrame
  20. Вывод
  21. Измените несколько имен столбцов в пандах (ярлыках)
  22. Output
  23. Переименовать с помощью функций или лямбда-выражений
  24. Вывод
  25. pandas.DataFrame.add_ суффикс ()
  26. Вывод
  27. pandas.DataFrame.add_suffix ()
  28. Вывод
  29. Как изменить и имена строк или индексы в Pandas
  30. Вывод
  31. Заключение
  32. См. также

Pandas Столбец переименования DataFrame

Pandas DataFrame — это прямоугольные сетки, которые используются для хранения данных. Легко визуализировать и работать с данными, когда они хранятся в DataFrame. Он состоит из строк и столбцов. Каждая строка представляет собой измерение некоторого экземпляра, в то время как столбец является вектором, который содержит данные для определенного атрибута/переменной.

Каждый столбец фрейма данных имеет сопоставимые данные по любому конкретному столбцу, но строки DataFrame могут предоставлять однородные или разнородные данные в любой конкретной строке. В отличие от двумерных массивов, оси фрейма данных pandas помечены.

См. Следующий синтаксис функции rename ().

Синтаксис

 DataFrame.rename (self, mapper = None, index = None,  columns = None, axis = None, copy = True, inplace = False, level = None, errors = 'ignore') 

Параметры

mapper: dict-like or function

Dict-like или преобразования функций, применяемые к значениям этой оси. Используйте средство сопоставления и ось, чтобы указать целевую ось с помощью сопоставителя, или индекс и столбцы.

index: dict-like или function

Альтернатива определению оси (mapper, axis = 0 эквивалентно index = mapper).

столбцы: dict-like или function

Альтернатива определению оси (mapper, axis = 1 равно columns = mapper).

axis: int or str

Ось, на которую будет нацеливаться картограф. Это может быть имя оси («индекс», «столбцы») или число (0, 1). По умолчанию используется index.

copy: bool, default True

Кроме того, скопируйте базовые данные.

inplace: bool, по умолчанию False

Следует ли возвращать новый DataFrame. Если True, то значение copy игнорируется.

level: int или имя уровня, по умолчанию Нет

В случае MultiIndex переименовывать метки только на указанном уровне.

errors {‘ignore’, ‘raise’}, по умолчанию ‘ignore’

Если ‘raise’, вызывает KeyError, когда dict-подобный сопоставитель, индекс или столбцы содержат метки, которых нет в индексе преображается. Если «игнорировать», существующие ключи будут переименованы, а дополнительные ключи будут проигнорированы.

Возвращаемое значение

Возвращает DataFrame с переименованными метками осей.

Это вызывает KeyError, если какая-либо из меток не найдена на выбранной оси и «errors = ‘raise’».

Пример переименования столбца Pandas DataFrame

См. следующий код.

 # app.pyimport  pandas as pdimport numpy as np # чтение базы данных = [('Stranger Things', 3, 'Millie'), ('Game of Thrones', 8, 'Emilia'), ('Westworld', 3, 'Evan Rachel'  ), ('La Casa De Papel', 4, 'Sergio')] # Создайте объект DataFrame .dfObj = pd.DataFrame (series, columns = ['Name', 'Seasons', 'Actor']) print (dfObj) df_new  = dfObj.rename (columns = {'Name': 'First Name'}) print (df_new) 

В В приведенном выше коде мы определили DataFrame , а затем использовали функцию DataFrame.rename () , чтобы изменить имя столбца с Имя на Имя.

Вывод

 python3 app.py  Имя Сезоны Актер0 Очень странные дела 3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 Ла Каса Де Папель 4 Серхио Имя Сезоны Актер0 Очень странные дела 3  Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 La Casa De Papel 4 Серхио 

Измените несколько имен столбцов в пандах (ярлыках)

Несколько имен index/columns изменились одновременно путем добавления элементов в словарь.

См. следующий код.

 #  app.pyimport pandas as pdimport numpy as np # чтение базы данных = [('Stranger Things', 3, 'Millie'), ('Game of Thrones', 8, 'Emilia'), ('Westworld', 3, '  Evan Rachel '), (' La Casa De Papel ', 4,' Sergio ')] # Создайте объект DataFrame print (' Перед изменением столбцов DataFrame ') dfObj = pd.DataFrame (series, columns = [' Name ','  Seasons ',' Actor ']) print (dfObj) # Измените имена столбцов с помощью функции rename ()print (' После изменения столбцов DataFrame ') df_new = dfObj.rename (columns = {' Name ':' First Name ','  Actor ':' Hero '}) print (df_new) 

Output

 python3 app.py Перед изменением столбцов DataFrame Имя Сезоны  Актер0 Stranger  Вещи 3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 La Casa De Papel 4 Серхио После изменения столбцов DataFrame Имя Сезоны Герой0 Очень странные дела 3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 La Casa De Papel 4 Серхио 

В приведенном выше коде я передал словарь, который состоит из старого имени: нового имени. Он заменит его новым.

Переименовать с помощью функций или лямбда-выражений

Функции (вызываемые объекты) также могут быть указанные в параметре index и columns метода rename () . Применение функции преобразования верхнего и нижнего регистра.

 импортировать панд как pdimport numpy as np # чтение базы данныхries = [('Stranger Things', 3, 'Millie'), ('Game of Thrones', 8, 'Emilia'), (  'Westworld', 3, 'Evan Rachel'), ('La Casa De Papel', 4, 'Sergio')] # Создайте объект DataFrame print ('Перед изменением столбцов DataFrame') dfObj = pd.DataFrame (series, columns  = ['Name', 'Seasons', 'Actor']) print (dfObj) # Измените имена столбцов с помощью функции rename ()print ('После изменения столбцов DataFrame на нижний регистр') df_new = dfObj.rename (columns = str  .lower) print (df_new) 

Вывод

 python3 app.py Перед изменением столбцов DataFrame Имя Сезоны Actor0 Stranger Things 3 Millie1  Игра престолов 8 Эмилия 2 Мир Дикого Запада 3 Эван Рэйчел 3 La Casa De Papel 4 Серхио После изменения столбцов DataFrame на строчные имена сезонов актер0 Очень странные дела 3 Милли1 Игра престолов 8 Эмилия 2 Мир Запада 3 Эван Рэйчел3 La Casa De Papel 4 Серхио 

pandas.DataFrame.add_ суффикс ()

Pandas.DataFrame.add_prefix () — это функция, которая добавляет префиксы и

См. следующий код для метода add_suffix () .

 # app.pyimport pandas as pdimport numpy as np # reading the dataseries = [('Stranger Things', 3  , 'Millie'), ('Game of Thrones', 8, 'Emilia'), ('Westworld', 3, 'Evan Rachel'), ('La Casa De Papel', 4, 'Sergio')] # Create  a DataFrame objectprint ('Перед добавлением префикса в столбцы DataFrame') dfObj = pd.DataFrame (series, columns = ['Name', 'Seasons', 'Actor']) print (dfObj) # Измените имена столбцов с помощью rename ()  functionprint ('После добавления префикса к столбцам DataFrame') df_new = dfObj.add_prefix ('KDL _') print (df_new) 

Вывод

 python3 app.py Перед добавлением префикса в столбцы DataFrame Имя Сезоны Актер0 Stranger Things 3 Millie1 Игра престолов 8 Эмилия2 Westworld 3 Evan Rachel3 La Casa De Papel 4 Sergio После добавления префикса в столбцы DataFrame KDL  _Name KDL_Seasons KDL_Actor0 Stranger Things 3 Millie1 Игра престолов 8 Эмилия2 Westworld 3 Эван Рэйчел3 La Casa De Papel 4 Серхио 

pandas.DataFrame.add_suffix ()

Метод Pandas.DataFrame.add_suffix () добавляет суффикс к именам столбцов.

См. следующий код.

 import pandas as pdimport numpy as np # чтение базы данных = [('Stranger Things', 3, 'Millie'), ('Game of Thrones', 8, 'Emilia'), ('Westworld', 3, '  Evan Rachel '), (' La Casa De Papel ', 4,' Sergio ')] # Создать объект DataFrame print (' Перед добавлением префикса в столбцы DataFrame ') dfObj = pd. DataFrame (series, columns = ['Name', 'Seasons', 'Actor']) print (dfObj) # Измените имена столбцов с помощью функции rename ()print ('После добавления суффикса к столбцам DataFrame') df_new = dfObj.add_suffix (  '_KDL') print (df_new) 

Вывод

 python3 app.py Перед добавлением суффикса в столбцы DataFrame Имя Сезоны Актер0 Очень странные дела  3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 La Casa De Papel 4 Серджио После добавления суффикса в столбцы DataFrame Имя_KDL Seasons_KDL Actor_KDL0 Очень странные дела 3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Эван Рэйчел3 La Casa De Papel 4   p>  Pandas add_prefix ()  и  add_suffix ()  обрабатывают только столбцы.  Если вы хотите добавить префиксы или суффиксы в индекс, укажите лямбда-выражение в индексе аргумента с помощью метода rename (), как описано выше.  

Кроме того, add_prefix () и add_suffix () не имеют на месте. Если вы хотите обновить исходный объект, перезапишите его как df = df.add_prefix ().

Как изменить и имена строк или индексы в Pandas

Pandas rename () используется для изменения индексов строк или имен строк.

Мы просто нужно использовать аргумент index и указать, мы хотим изменить индекс, а не столбцы.

См. следующий код.

 импортировать панд как pdimport numpy as np # чтение базы данных = [('Stranger Things', 3, 'Millie'), ('Game of Thrones', 8, 'Emilia'), ('Westworld', 3, 'Evan  Rachel '), (' La Casa De Papel ', 4,' Sergio ')] # Создайте объект DataFrame .dfObj = pd.DataFrame (series, columns = [' Name ',' Seasons ',' Actor ']) print (dfObj  ) # После переименования значений индекса. Df_new = dfObj.rename (index = {0: 'zero', 1: 'one'}) print (df_new) 

Вывод

 python3 app.py Имя Сезоны Актер0 Очень странные дела 3 Милли1 Игра престолов 8 Эмилия2 Мир Дикого Запада 3 Ev  an Рэйчел3 La Casa De Papel 4 Серхио Имя Сезоны Actorzero Очень странные дела 3 Миллионе Игра престолов 8 Эмилия2 Westworld 3 Эван Рэйчел3 La Casa De Papel 4 Серхио 

Заключение

Вы можете изменить имя столбца DataFrame как минимум двумя способами.

Один из способов - использовать df.columns из Pandas и напрямую назначать новые имена.

Другой способ - использовать Функция rename () . Использование pandas rename () для изменения имен столбцов - гораздо лучший способ, чем раньше. Можно легко изменить имена определенных столбцов. И не все имена столбцов нужно менять.

Чтобы изменить имена столбцов с помощью функции rename () в Pandas, необходимо указать сопоставитель, словарь со старым именем в качестве ключей и новый имя как значения.

См. также

Pandas set_index ()

Pandas iloc []

Pandas value_counts ()

Pandas sort_values ​​()

Pandas pivot_table ()

Оцените статью
nanomode.ru
Добавить комментарий