Группировать столбец фрейма данных на основе другого фрейма данных - PullRequest
1 голос
/ 14 марта 2019

На основе этого фрейма данных

  df1  Name     Age
       Johny     15
       Diana     35
       Doris     97
       Peter     25
       Antony    55

У меня есть этот фрейм данных с количеством диапазонов, которые я хочу использовать, например

 df2 Header   Init1   Final1   Init2  Final2  Init3  Final3
     Names    NaN      NaN     NaN     NaN     NaN    NaN
     Age       0        20      21      50      51    100

Что я ищу, так этополучить такой результат

  df3  Name     Age
       Johny    0-20
       Diana    21-50
       Doris    51-100
       Peter    21-50
       Antony   51-100

Я не знаю, возможно ли решение с cut () , но я новичок в Python.

1 Ответ

2 голосов
/ 14 марта 2019

Использование pd.cut:

l = df2.iloc[1,1:].tolist()
labels = [str(t[0])+'-'+str(t[1]) for t in zip(l[::1],l[1::1])]

df['Age'] = pd.cut(df['Age'], bins=l, labels=labels)

print(df)
     Name     Age
0   Johny    0-20
1   Diana   21-50
2   Doris  51-100
3   Peter   21-50
4  Antony  51-100
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...