В Python, как мне изменить один столбец фрейма данных на основе другого? - PullRequest
0 голосов
/ 05 августа 2020

В кадре данных со столбцами x и y , как бы мне написать код, чтобы, если в строке есть строка x , но 'Не назначено' y строка (столбец y содержит строку «Не назначено»), тогда строка y будет такой же, как x строка? (Замена строки «Не назначено» в столбце y содержимым столбца x )

Ответы [ 2 ]

1 голос
/ 05 августа 2020

Вы можете использовать df.iterrows() условную проверку значений столбцов во время итерации.

import pandas as pd

df = pd.DataFrame(data={'x': [1,2,3], 'y': [6, "Not Assigned", 8]})

for index, value in df.iterrows():
  if value['y'] == 'Not Assigned':
    df['y'][index] = df['x'][index]

Вывод:


    x   y
0   1   6
1   2   2
2   3   8
0 голосов
/ 05 августа 2020
df.loc[df['y']=='Not assigned', 'y'] = df.loc[df['y']=='Not assigned', 'x']

сделает это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...