«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как создать столбец на основе условий if-else-else в Pandas?

Как создать столбец на основе условий if-else-else в Pandas?

Опубликовано 6 ноября 2024 г.
Просматривать:840

How to Create a Column Based on If-Else-Else Conditions in Pandas?

Создание столбца с условиями if-else-else в Pandas

Чтобы создать новый столбец на основе условия if-elif-else , существует два основных подхода:

Невекторизованный подход

Этот подход предполагает определение функции, которая работает со строками:

def f(row):
    if row['A'] == row['B']:
        val = 0
    elif row['A'] > row['B']:
        val = 1
    else:
        val = -1
    return val

Затем примените его к фрейму данных по строкам:

df['C'] = df.apply(f, axis=1)

Векторизованный подход

Векторизованный подход использует np.where для непосредственного создания нового столбца:

df['C'] = np.where(
    df['A'] == df['B'], 0, np.where(
    df['A'] >  df['B'], 1, -1)) 

Этот подход более эффективен для больших наборов данных.

Вот пример использования предоставленного фрейма данных:

Входной кадр данных

AB
22
31
13

Выходной кадр данных

ABC
220
311
13-1
Заявление о выпуске Эта статья перепечатана по адресу: 1729378457. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3