Python Pandas If Else возвращает несколько значений значение DataFrame

Я пытаюсь сделать следующее:

  1. Передайте Dataframe [['ID'] ['Team'] для работы
  2. Если команда синяя, верните «Y» в «Может ли он играть?» а также вернуть значение "Синий" для "Почему?"

Ниже моя попытка кода.

def play(df):
if df['Team'] in list(['Blue']):
    return 'Exclude','**************'  

df['Can he play?'],df['Why?'] = df.apply(play, axis = 1)

Я не знаю, как вернуть значение фрейма данных из условного оператора

Как вернуть "Синий" (значение в df ["Команда"])

Python Pandas If Else возвращает несколько значений значение DataFrame

Всем привет. При публикации кода Python убедитесь, что ваш отступ правильно отформатирован. Вы можете скопировать / вставить свой точный код в форму редактирования, выбрать его и нажать Ctrl-K, чтобы сделать отступ сразу.

Iguananaut 09.11.2018 00:05

Я действительно не понимаю, почему вы написали if df["Team"] in list["Blue"]). Прежде всего, ["Blue"] уже представляет собой (одноэлементный) список, поэтому его упаковка в list() просто делает его бесполезную копию. Но во-вторых, почему не только if df["Team"] == "Blue"?

Iguananaut 09.11.2018 00:10
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
571
1

Ответы 1

Это можно сделать в два этапа, например:

df = pd.DataFrame({'Team': ['Blue', 'Green', 'Blue', 'Red']})
colour = 'Blue'
df['Can he play?'] = np.where(df['Team'] == colour, 'Y', None)
df['Why?'] = np.where(df['Team'] == colour, colour, None)

    Team Can he play?  Why?
0   Blue            Y  Blue
1  Green         None  None
2   Blue            Y  Blue
3    Red         None  None

Другие вопросы по теме