我有一个DataFrame如下:
col1 num agg_col
12 200 0
13 300 0
14 400 0
15 500 0
16 600 0
17 700 0
我正在尝试根据col1中的值填充agg_col。
例如,如果col1为12-14,则在agg_col,15-16,
上填充1
在agg_col上填充2。如果col1 = 17,则填充3。
我编写了以下python代码:
df['agg_col'][(df['col1'] >= 12) & (df['col1'] <= 14)] = 1
但是我被困在这里,无法继续进行。请帮忙!!!
答案 0 :(得分:2)
尝试看看pd.cut
pd.cut(df.col1,[0,15,16,17],labels=[1,2,3])
Out[988]:
0 1
1 1
2 1
3 1
4 2
5 3
Name: col1, dtype: category
Categories (3, int64): [1 < 2 < 3]