Задать вопрос
@idr1995

Как добавить значение в новый столбец исходя из данных другого столбца?

Из таблицы НБА вывел два столбца:
Первый столбец - игрок,
Второй столбец - его команда.

Создаю третий столбец (Conference). Нужно добавить значения в этот столбец. Всего значений два - это Eastern и Western.
Исходя из столбца Team не могу добавить эти два значения под подходящие команды.

Весь код получился следующий:
nba = pd.read_csv('nba.csv', usecols=['Name', 'Team'])
teams = nba['Team'].unique()
west = ['Boston Celtics', 'Brooklyn Nets', 'New York Knicks',
       'Philadelphia 76ers', 'Toronto Raptors', 'Chicago Bulls', 'Cleveland Cavaliers',
       'Detroit Pistons', 'Indiana Pacers', 'Milwaukee Bucks', 'Charlotte Hornets',
       'Miami Heat', 'Orlando Magic',
       'Washington Wizards', 'Minnesota Timberwolves']

for i in nba['Team']:
    if i in west:
        nba['conference'] = 'western'
    else:
        nba['conference'] = 'eastern'


но в итоге у меня получается, что весь столбец состоит из значения Eastern
  • Вопрос задан
  • 141 просмотр
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@dmshar
Ну, полностью повтроить ваш пример, разумеется не получится, но решение - вот оно:
list_a = [["Федя",'Boston Celtics'],
          ["Петя",'Toronto Raptors'],
          ["Коля",'Toronto Raptors'],
          ["Вася", 'Молодые таланты'],
          ["Онуфрий",'Старые инвалиды']]

columns = ['Name', 'Team']
nba = pd.DataFrame(list_a, columns=columns)

west = ['Boston Celtics', 'Brooklyn Nets', 'New York Knicks',
       'Philadelphia 76ers', 'Toronto Raptors', 'Chicago Bulls', 'Cleveland Cavaliers',
       'Detroit Pistons', 'Indiana Pacers', 'Milwaukee Bucks', 'Charlotte Hornets',
       'Miami Heat', 'Orlando Magic',
       'Washington Wizards', 'Minnesota Timberwolves']

nba['conference']=np.where(nba['Team'].isin(west), 'western','eastern' )
print(nba)


Результат:
Name             Team conference
0     Федя   Boston Celtics    western
1     Петя  Toronto Raptors    western
2     Коля  Toronto Raptors    western
3     Вася  Молодые таланты    eastern
4  Онуфрий  Старые инвалиды    eastern
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы