如何将场景转换为python代码:有3个条件需要在正文中明确检查和提及
情景示例 如果在值列中,我们有90,95,99100102。所以基本上,只有当标志(阈值)超过100时,标志才是假的。Else标志应该为true。下一个tym值大于100,则flag应为true,flag2应为0。只有当我们需要考虑FLAG2值应该是1是条件1)值应该小于100(2)以前的值应该小于100和3)FLAG=F. 值条件标志 90吨0如何将场景转换为python代码:有3个条件需要在正文中明确检查和提及,python,Python,情景示例 如果在值列中,我们有90,95,99100102。所以基本上,只有当标志(阈值)超过100时,标志才是假的。Else标志应该为true。下一个tym值大于100,则flag应为true,flag2应为0。只有当我们需要考虑FLAG2值应该是1是条件1)值应该小于100(2)以前的值应该小于100和3)FLAG=F. 值条件标志 90吨0 T.0 F.1 T.0 Value和condition是两个输入列,我们只需要基于这两个属性Value和condition并考虑上述条件的事实来计
编辑:我希望这次我明白了 标志为1的唯一情况是: 当值>100且上一个值<100且条件='F'
data = pd.DataFrame({'value':[100,95,96,97,110,120,55,750],'condition':['F','T','T','T','F','T','T','F']})
_condition1 = data.value > 100
_condition2 = data.value.shift(1) < 100
_condition3 = data.condition == 'F'
data['flag'] = np.where(_condition1 & _condition2 & _condition3,1,0)
data
输出:
您是否检查了
如果
如果其他条件?如果值>100:flag=1至于其余部分,我不确定您在问什么。评论不用于扩展讨论或调试会话;这段对话已经结束。请确保使用任何/所有相关见解更新答案。不要忘记标记您的答案以结束此主题,其他社区成员可以从中受益。
df = pd.DataFrame({'original_values':[1,2,3,4,5,6,7,8,9,10]})
df['shift_1_down'] = df.original_values.shift(1)
df['shift_2_down'] = df.original_values.shift(2)
df['shift_1_up'] = df.original_values.shift(-1)
df['shift_2_up'] = df.original_values.shift(-2)
df