我有以下输入DataFrame:
> df = pandas.DataFrame({'x': [1, 6, 8, 5, 2, 6, 12]})
> df
x
0 1
1 6
2 8
3 5
4 2
5 6
6 12
我想创建列y,以便:
y[i] = 0
if x < 4
,
y[i] = 1
,请 x > 6
如果y[i] = y[i - 1]
和4 <= x <= 6
因此,通过上面的示例,输出将是:
x y
0 1 0
1 6 0
2 8 1
3 5 1
4 2 0
5 6 0
6 12 1
最好的方法是什么?一个简单的apply()
似乎不起作用,因为我没有找到一种方法来引用apply()
创建的列中先前计算的值。