Pandas: формула для «якщо значення в стовпці, то»


Ви можете використовувати такий синтаксис у pandas, щоб призначити значення стовпцю на основі значень іншого стовпця:

 df[' new '] = df[' col ']. map ( lambda x: ' new1 ' if ' A ' in x else ' new2 ' if ' B ' in x else '')

Цей конкретний синтаксис створить новий стовпець під назвою «новий», який прийматиме такі значення:

  • new1 , якщо значення в стовпці дорівнює A.
  • new2 , якщо значення в стовпці дорівнює B.
  • Порожній рядок, якщо значення в стовпці дорівнює будь-якому іншому значенню.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: використання формули для «If Value in Column Then» у Pandas

Припустімо, що у нас є такий фрейм даних pandas, який містить інформацію про різних баскетболістів:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'C', 'C'],
                   ' points ': [14, 22, 25, 34, 30, 12, 10, 18]})

#view DataFrame
print (df)

  team points
0 to 14
1 to 22
2 to 25
3 to 34
4 B 30
5 B 12
6 C 10
7 C 18

Тепер припустімо, що ми хочемо створити новий стовпець під назвою city , значення якого залежать від відповідного значення в стовпці team .

Для цього ми можемо використати такий синтаксис:

 #create new column called city whose values depend on values in team column
df[' city '] = df[' team ']. map ( lambda x: ' Atlanta ' if ' A ' in x else ' Boston ' if ' B ' in x else '')

#view updated DataFrame                            
print (df)

  team points city
0 A 14 Atlanta
1 to 22 Atlanta
2 to 25 Atlanta
3 to 34 Atlanta
4 B 30 Boston
5 B 12 Boston
6 C 10         
7 C 18       

Цей конкретний синтаксис створив новий стовпець під назвою місто , який приймає такі значення:

  • Атланта , якщо значення команди дорівнює А.
  • Бостон , якщо вартість команди дорівнює B.
  • Порожній рядок, якщо значення в team дорівнює будь-якому іншому значенню.

Зверніть увагу, що в цьому прикладі ми використовували порожній рядок після останнього оператора else , щоб просто залишити значення, які не відповідають жодним умовам, порожніми.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:

Pandas: отримати індекс рядків, стовпець яких відповідає значенню
Pandas: як вибрати стовпці, що містять певний рядок
Pandas: як перевірити, чи містить стовпець рядок

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *