[英]Populate column in data frame based on a range found in another dataframe
[英]Group a column of a data frame based on another dataframe
基於此數據框
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的新手。
使用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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.