• Автор записи:
  • Рубрика записи:Pandas
  • Время чтения:4 минут чтения
  • Комментарии к записи:0 комментариев

В Python в основном есть несколько методов, которые обычно используются и которые важно понимать при обновлении значений столбцов в Python Pandas.

Содержание

С помощью at()

В этом разделе будем работать с функцией replace().

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

Пример:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
print(df)

Код:

С помощью at()

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

  • На основе индекса строки и имени столбца метод at() в pandas используется для извлечения одного значения из кадра данных.
  • С помощью метода Python at() мы можем изменять значение строки столбца по одному.

Синтаксис метода dataframe.at() в Python.

Dataframe.at[rowIndex, columnLabel]

Примечание. – Этот параметр принимает два параметра: индекс строки и метку столбца. Если аргументы, заданные в виде индекса строки и меток столбца, выходят за пределы или отсутствуют в кадре данных, возникает ключевая ошибка.

В этом примере мы использовали функцию at() с индексом 4 фрейма данных и столбцом «Country_name». Таким образом, значение столбца Country_name в индексе строки 4 изменяется.

Исходный код:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
df.at[4,'Country_name']='Albania'
print(df)

Вот реализация следующего кода.

pandas обновляет значения столбцов

С помощью replace()

Теперь давайте разберемся, как обновить значения столбцов в Python Pandas с помощью replace().

Любая строка внутри фрейма данных может быть обновлена или изменена с помощью функции replace() в Python. Ему не обязательно передавать значения индекса и метки.

Значения столбцов можно изменить с помощью функции DataFrame.replace() — одно значение на другое во всех столбцах. Эта функция возвращает новый DataFrame, который принимает параметры для замены, значение, место, ограничение, регулярное выражение и метод. Когда используется параметр inplace=True, он заменяет существующий объект DataFrame и возвращает результат None.

Синтаксис:

DataFrame.replace(to_replace=None, value=None, inplace=False, limit=None, regex=False, method='pad')

Он состоит из нескольких параметров:

  • to_replace: создайте строку, список, словарь, регулярное выражение, целое число, число с плавающей запятой или другой тип данных и укажите значения, которые необходимо заменить.
  • value: по умолчанию оно не принимает значения и указывает значение, которое мы хотим заменить.
  • inplace: следует ли работать на месте. По умолчанию он принимает ложное значение.
  • limit: максимальный пробел, который необходимо заполнить при движении вперед или назад.
  • regex: если заменить и/или значение, следует рассматривать как регулярное выражение.
  • method: по умолчанию он принимает значение «pad» и используется для замены.

Давайте возьмем пример и проверим, как обновить значения столбцов в Python Pandas с помощью replace().

Исходный код:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
df.replace("Australia", "Argentina", inplace=True)
print(df)

Вы можете обратиться к приведенному ниже снимку экрана:

С помощью replace()

С помощью iloc()

В этом разделе мы обсудим, как обновить значения столбцов в Python Pandas с помощью функции iloc().

Предоставляя значения индекса соответствующей строки/столбца, можно обновить или изменить значение строки/столбца с помощью метода iloc() Python.

Пример:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
df.iloc[[1,3],[1]] = 100
print(df)
  • В этом случае мы изменили значение строк 1, 3 и первого столбца «Число» на 100.
  • Используя функцию iloc(), мы можем даже разрезать строки, предоставленные функции, чтобы изменить значения многих строк одновременно.

Вот скриншот следующего кода.

С помощью iloc()

С помощью loc()

В этом разделе мы обсудим, как обновить значения столбцов в Python Pandas с помощью функции loc().

Строки и столбцы DataFrame pandas выбираются с помощью loc. Простота использования DataFrame — одно из его ключевых преимуществ. Чтобы выбрать или отфильтровать строки или столбцы , используйте атрибут loc[].

Предоставляя метки столбцов и индексы строк, метод loc() в Python также можно использовать для изменения значения строки в ее столбцах.

Синтаксис:

dataframe.loc[row index,['column-names']] = value

Давайте возьмем пример и проверим, как обновить значения столбцов в Python Pandas с помощью функции loc().

Исходный код:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
df.loc[0:2,['index','Country_name']] = [100,'Angola']
print(df)

Вот реализация следующего кода.

С помощью loc()

Как обновить регистр имен столбцов

Теперь давайте разберемся, как обновить регистр имен столбцов в Python Pandas.

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

Давайте возьмем пример и проверим, как обновить регистр имен столбцов в Python Pandas.

Исходный код:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
df.columns = df.columns.str.lower()
print(df)

Вы можете обратиться к скриншоту ниже.

Как обновить регистр имен столбцов

С помощью rename()

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

Использование функции rename() — это один из способов переименования столбцов в кадре данных Pandas. Когда нам нужно переименовать несколько конкретных столбцов, этот подход работает хорошо, поскольку нам просто нужно предоставить информацию для столбцов, которые необходимо изменить.

Давайте посмотрим на синтаксис и поймем работу функции df.rename() в Python.

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

Пример:

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

Исходный код:

import pandas as pd

new_val = {"Country_name": ['USA','Germany','Australia','China'],"Zip_Code": [1456,8723,9562,8652]}
df = pd.DataFrame(new_val, index=[1,2,3,4])
result=df.rename(columns={'Country_name': 'Country'})
print(result)

Вот выполнение следующего кода.

С помощью rename()

С помощью update()

В этом разделе мы обсудим, как обновить Dataframe с использованием данных различной длины с помощью функции update().

Давайте рассмотрим ситуацию, когда мне нужно обновить фрейм данных, добавив больше записей, чем исходный фрейм данных. Если я использую функцию update(), записи будут обновляться до тех пор, пока их длина не будет соответствовать размеру исходного кадра данных.

Давайте возьмем пример и проверим, как обновить Dataframe с данными разной длины с помощью функции update().

Исходный код:

import pandas as pd

new_data = pd.DataFrame({
    'Cities_of_U.S.A': ['NewYork', 'California', 'Phenix City'],
    'new_val': [56, 18, 21]
})
print("Original Dataframe: \n", new_data)

result = pd.DataFrame({'new_val': [4, 5, 6]})
new_data.update(result)
print("Changed Dataframe:\n", new_data)

Вот реализация следующего кода.

С помощью update()

С помощью update()

В этом разделе мы обсудим, как обновить Dataframe в определенном месте с помощью update().

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

Давайте возьмем пример и проверим, как обновить Dataframe в определенном месте с помощью функции update().

Исходный код:

import pandas as pd

new_data = pd.DataFrame({
    'Cities_of_U.S.A': ['NewYork', 'California', 'Phenix City'],
    'new_val': [56, 18, 21]
})
print("Original Dataframe: \n", new_data)

new_result = pd.DataFrame({'new_val': [1, 2]}, index=[0, 2])
new_data.update(new_result)
print("Modified Dataframe :\n", new_data)

Вот выполнение следующего данного кода:

С помощью update()

Добавить комментарий