【发布时间】:2020-06-26 15:12:27
【问题描述】:
我有一个专栏'value' 和numerical values。我写了一个条件来创建一个列'status',如果值less than '5',则返回'G',否则'NG'。但我希望输出类似于'expected output'。如果条件连续满足,则应为incremented。我已经编写了以下代码,但我无法对其进行最终调整。
h_count = 0
current = "G"
status = []
for i in range (len(df_2)):
if df_2.iloc[i, 13] == 'NG':
status.append("NG")
elif df_2.iloc[i, 13] == 'G':
h_count += 0
status.append(f"G{h_count}")
if df_2.iloc[i+1, 13] == df_2.iloc[i, 13]:
status.append(f"G{h_count}")
这里的'13' 是column index。我该怎么做?
raw_df = pd.DataFrame(
{
"value": [5, 5, 5,5,10,12,3,2,4,5,12,15,5,13,2],
"Status": ['G','G','G','G','NG','NG','G','G','G','G','NG','NG','G','NG','G'],
"Expected_Status": ['G0','G0','G0','G0','NG','NG','G1','G1','G1','G1','NG','NG','G2','NG','G3'],
}
)
【问题讨论】:
-
您能否将输入和预期输出(as text)添加到您的问题中?这样,您就可以轻松重现您的问题。