Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在索引后用递增的值填充列行_Python_Pandas_Dataframe - Fatal编程技术网

Python 在索引后用递增的值填充列行

Python 在索引后用递增的值填充列行,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数值列a),当a)大于100时,我需要创建一个新的数值列,该数值列为0,然后对下面的行递增1,对上面的行递增-1 比如说 a b 0 -5 20 -4 40 -3 60 -2 80 -1 100 0 120 1 140 2 160 3 我设法用100后的0填充行,但现在我正努力在该索引上下增加 df_confirated_葡萄牙['day_100']=df_confirated_葡萄牙。应用(如果x['confirated']>100,则λx:0,否则-1,轴=1) 我能得到一些关

我有一个数值列a),当a)大于100时,我需要创建一个新的数值列,该数值列为0,然后对下面的行递增1,对上面的行递增-1

比如说

a  b

0 -5
20 -4
40 -3
60 -2
80 -1
100 0
120 1
140 2
160 3
我设法用100后的0填充行,但现在我正努力在该索引上下增加

df_confirated_葡萄牙['day_100']=df_confirated_葡萄牙。应用(如果x['confirated']>100,则λx:0,否则-1,轴=1)

我能得到一些关于如何做的帮助吗


您可以从
np.arange
序列中减去大于或等于
100
的第一个元素的位置:

df['b'] = np.arange(len(df)) - np.argmax(df['a'] >= 100)

只是确认一下:你的数据中正好有一个
100
?不,我甚至没有一个100,在某一行之后它会高于100,这是我的0-值,然后去找@a_guest的答案,将
df['a']==100
更改为
df['a']>=100
。是的,这个答案看起来非常简洁。只是有点小问题。谢谢你的输入,我忘了提到索引不是顺序的,因为这个df是一个过滤器的结果。但我确实喜欢你的建议。有什么方法可以让我的索引重新设置为0到len(df)?@LuísCosta我不明白你的意思,你能用一个例子更新你的问题吗?