我正在尝试尽可能高效地查找数据框列的第一个转换值。我希望没有临时变量。假设我有一个数据框(df),其列为:
Column1
0
0
0
-1
1
在这种情况下,我要查找的值为-1,这是该值第一次更改。我想在if语句中使用它来确定该值是先转换为1还是-1。伪代码为:
if (first transition value == 1):
# Something
elif: (first transition value == -1):
# Something else
答案 0 :(得分:1)
您可以将数据框中的值与第一个值进行比较,仅采用不同的值,然后使用第一个值。
df[df.Column1 != df.Column1.iloc[0]].Column1.values[0]
如果您始终想找到0之外的第一个不同元素,可以这样做:
df[df.Column1 != 0].Column1.values[0]