我有一个Pandas DataFrame,我正在try 查找两个列值不同的第一行的索引.然而,我需要开始以相反的顺序进行搜索.

下面是一个例子:

import pandas as pd

data = {'Column1': [1, 2, 3, 5, 5],
        'Column2': [1, 1, 3, 5, 5]}

df = pd.DataFrame(data)

例如,在这里,我希望从倒数第二个索引开始,直到找到列值不同的第一个索引.因此,期望的输出将是"1".

推荐答案

通过索引筛选行,例如索引值为i,Comapre表示不等于Series.ne,最后使用boolean indexingSeries.last_valid_index:

Notice: If no difference output is 100.

i = 3
s = df.loc[:i, 'Column1'].ne(df.loc[:i, 'Column2'])  

out = s[s].last_valid_index()

nextiter的另一个 idea 是:

i = 3
s = df.loc[:i, 'Column1'].ne(df.loc[:i, 'Column2'])  

out = next(iter(s.index[s][::-1]), None)

Python相关问答推荐

try 使用tensorFlow.keras.models时optree Import错误

Pandas 按照特殊规则保留每n行

Python:MultiIndex Dataframe到类似json的字典列表

Python中使用Delivercio进行多个请求

Django注释:将时差转换为小数或小数

如何使用bs 4从元素中提取文本

在Python中为变量的缺失值创建虚拟值

使用mySQL的SQlalchemy过滤重叠时间段

为什么tkinter框架没有被隐藏?

如何在箱形图中添加绘制线的传奇?

如何在Python中并行化以下搜索?

修复mypy错误-赋值中的类型不兼容(表达式具有类型xxx,变量具有类型yyy)

如何在solve()之后获得症状上的等式的值

如何从pandas的rame类继承并使用filepath实例化

从一个系列创建一个Dataframe,特别是如何重命名其中的列(例如:使用NAs/NaN)

为什么NumPy的向量化计算在将向量存储为类属性时较慢?'

如何启动下载并在不击中磁盘的情况下呈现响应?

下三角形掩码与seaborn clustermap bug

合并与拼接并举

用SymPy在Python中求解指数函数