Рубрики
Без рубрики

Pandas DataFrame – Замените значения в столбце на основе условия

Автор оригинала: Python Examples.

Pandas – Замените значения в столбце на основе условия

Чтобы заменить значения в столбце на основе условия в DataFrame PandaS, вы можете использовать свойство dataframe.loc или numpy.ge () или dataframe.ge ().

В этом руководстве мы пройдем все эти процессы на примере программы.

Метод 1: dataframe.loc – Заменить значения в столбце на основе условия

Чтобы заменить значения в столбце на основе условия, используя dataframe.loc, используйте следующий синтаксис.

DataFrame.loc[condition, column_name] = new_value

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

Python Program

import pandas as pd

df = pd.DataFrame([
	[-10, -9, 8],
	[6, 2, -4],
	[-8, 5, 1]],
	columns=['a', 'b', 'c'])

df.loc[(df.a < 0), 'a'] = 0
print(df)

Выход

   a  b  c
0  0 -9  8
1  6  2 -4
2  0  5  1

Вы также можете заменить значения в несколько значений в зависимости от одного состояния. Передайте колонны как кортеж, чтобы открыть.

DataFrame.loc[condition, (column_1, column_2)] = new_value

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

Python Program

import pandas as pd

df = pd.DataFrame([
	[-10, -9, 8],
	[6, 2, -4],
	[-8, 5, 1]],
	columns=['a', 'b', 'c'])

df.loc[(df.a < 0), ('a', 'b')] = 0
print(df)

Выход

   a  b  c
0  0  0  8
1  6  2 -4
2  0  0  1

Метод 2: numpy.gh – заменять значения в столбце на основе условия

Чтобы заменить значения в столбце на основе условия, используя Numpy. Где, используйте следующий синтаксис.

DataFrame['column_name'] = numpy.where(condition, new_value, DataFrame.column_name)

В следующей программе мы будем использовать Numpy.ge () метод и замените эти значения в столбце «A», который удовлетворяет условию, которое значение меньше нуля.

Python Program

import pandas as pd
import numpy as np

df = pd.DataFrame([
	[-10, -9, 8],
	[6, 2, -4],
	[-8, 5, 1]],
	columns=['a', 'b', 'c'])

df['a'] = np.where((df.a < 0), 0, df.a)
print(df)

Выход

   a  b  c
0  0 -9  8
1  6  2 -4
2  0  5  1

Метод 3: dataframe.gh – замена значений в столбце на основе условия

Чтобы заменить значения в столбце на основе условия, используя Numpy. Где, используйте следующий синтаксис.

DataFrame['column_name'].where(~(condition), other=new_value, inplace=True)
  • Column_name это столбец, в которой необходимо заменить значения.
  • Состояние Это логическое выражение, которое применяется для каждого значения в столбце.
  • new_value Заменяет (с) существующего значения в указанном столбце на основе условия.

В следующей программе мы будем использовать метод dataframe.ge () и замените эти значения в столбце «A», который удовлетворяет условию, которое значение меньше нуля.

Python Program

import pandas as pd

df = pd.DataFrame([
	[-10, -9, 8],
	[6, 2, -4],
	[-8, 5, 1]],
	columns=['a', 'b', 'c'])

df['a'].where(~(df.a < 0), other=0, inplace=True)
print(df)

Выход

   a  b  c
0  0 -9  8
1  6  2 -4
2  0  5  1

Резюме

В этом руководстве примеров Python мы узнали, как заменить значения столбца в DataFrame с новым значением, основанным на условиях.

Похожие учебники

  • Pandas DataFrame – Заменить несколько значений
  • Python Pandas DataFrame – Замените значения NAN с нулем