Python 3.x 为具有阈值的时间序列生成新列

Python 3.x 为具有阈值的时间序列生成新列,python-3.x,time-series,jupyter-notebook,Python 3.x,Time Series,Jupyter Notebook,我只是从这条蟒蛇开始。 我有一个如下所示的TS数据集: 输入: adata.head() Out: datetime wgt_gain 2018-05-08 16:00:00 0.0 2018-05-08 17:00:00 0.0 2018-05-08 18:00:00 0.0 2018-05-08 19:00:00 0.0 2018-05-08 20:00:00 0.0 wgt_gain count 4227.000000 mean

我只是从这条蟒蛇开始。 我有一个如下所示的TS数据集:
输入: adata.head()
Out:

datetime    wgt_gain
2018-05-08 16:00:00     0.0
2018-05-08 17:00:00     0.0
2018-05-08 18:00:00     0.0
2018-05-08 19:00:00     0.0
2018-05-08 20:00:00     0.0
    wgt_gain
count   4227.000000
mean    0.003929
std     0.177180
min     -0.966667
25%     -0.066667
50%     0.000000
75%     0.050000
max     0.985000
它的描述是:
输入:adata.head()
Out:

datetime    wgt_gain
2018-05-08 16:00:00     0.0
2018-05-08 17:00:00     0.0
2018-05-08 18:00:00     0.0
2018-05-08 19:00:00     0.0
2018-05-08 20:00:00     0.0
    wgt_gain
count   4227.000000
mean    0.003929
std     0.177180
min     -0.966667
25%     -0.066667
50%     0.000000
75%     0.050000
max     0.985000
我想应用一个新列,其阈值类似于: 价值观: 介于0和25%之间-->1
在25%和50%之间-->2

在75%和100%之间-->4
与负值类似

提前感谢。

您可以使用将值存储到离散的间隔中,并将存储单元设置为您想要的:

adata['new_column'] = (pd.cut(adata.weight_gain,
                              bins = adata.wgt_gain.quantile([0,.25,.5,.75,1]),
                              labels=[1,2,3,4]))