根据上一行中另一列中的值修改1列中的值

时间:2018-03-17 04:37:57

标签: python pandas

我有一个包含3列和4行的数据框,

import pandas as pd
df_ticker = pd.DataFrame({'Min_val': [22382,37876,46717,62247], 'Max_val': [36901,46716,62045,182727],
               'Ticker':['$','$$','$$$','$$$$']})
df_ticker

示例输入:

enter image description here

我想修改数据框中的Min值,而不是索引1 min_val = max_val(索引0处)+ 1。

输出:

enter image description here

请告诉我如何实现这一目标。

1 个答案:

答案 0 :(得分:1)

移位功能有效。要将Min_val保留在第一列中,您只需使用1:函数指定loc,否则会将第一行设置为NaN

df_ticker.loc[1:,'Min_val'] = df_ticker['Max_val'].shift(1) + 1