Соответствующие индексы в python для категоризации столбца
У меня есть столбец в кадре данных длиной 1083 с 143 уникальными значениями. Чтобы проиллюстрировать мой вопрос, 6 из них:
- пекарня
- больница
- Гостиница
- зубной врач
- Университет
- ресторан
Я создал еще один фрейм данных, 2x1. Первый столбец содержит 143 уникальных значения, а второй содержит то, что я хочу, чтобы каждое из них было классифицировано как. например:
1. bakery commercial
2. hospital commerical
3. hotel hospitality
4. dentist commercial
5. university education
6. restaurant hospitality
Мне было интересно, как бы я создал новый столбец в моем исходном df, сопоставляя индексы так, чтобы для любой записи в столбце, которая = "хлебобулочные изделия", была бы "коммерческая" в новом столбце.
2 ответа
Вы могли бы использовать merge
и сделать что-то вроде этого:
import pandas as pd
df = pd.merge( left=firstDataFrame, right=secondDataFrame, on='NameOfColumnContainingBakery...')
Имя столбца в on=''
должен быть одинаковым в обоих таймфреймах.
Это объединяет два фрейма данных в один, который содержит дополнительный столбец, как вы его описали.
Надеюсь, это поможет.
Вы можете использовать словари, определенные где-то в вашей программе... обращайтесь к нему всякий раз, когда вы пытаетесь создать новый столбец...
categories = {"bakery" : "commercial", ... }
затем вы вызываете словарь всякий раз, когда вам нужно извлечь соответствующее значение:
categories["bakery"] # will return "commercial"