PYTHON:使用if语句查找两个变量列相同的位置并存储索引

2024-09-30 14:37:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图存储两个数据帧具有相同值的索引。例如

当前测量仪=95x4数据帧,具有以下标题:站点号、站点名、纬度、纬度

ucol\u仪表=253 x 2数据帧,具有以下标题:站点号,区域号

我想找出这两个数据帧的索引在哪里具有相同的站点号(站点号)

我正在与以下人员合作:

count1=0
gages_idx=[]
for j in range(len(current_gages)):
    if ucol_gages['site_no'][count1] == current_gages['site_no'][j]:
        gages_idx.append([count1, j])
        count1+=1
    elif ucol_gages['site_no'][count1] != current_gages['site_no'][j]:
        count1+=0

循环在[4,4]处停止,使用第一个if语句,然后为了确保当前仪表中没有任何其他行,我添加了elif语句来遍历其余的行

我知道ucol_仪表和当前_仪表匹配的下一个指数是: ucol测厚仪['现场测厚仪编号][5]和当前测厚仪['现场测厚仪编号][4]

有没有更简单的方法?我需要确保遍历DFs中所有行索引的变体,以确定任何可能的匹配


Tags: 数据no标题if站点仪表sitecurrent
1条回答
网友
1楼 · 发布于 2024-09-30 14:37:07

要获得ucol_gages数据帧的匹配索引,可以执行以下操作

ucol_gages[ucol_gages['site_no'].isin(pd.merge(ucol_gages, current_gages, on=['site_no'], how='inner')['site_no'])].index.values.tolist()

要获得当前_gages数据帧的匹配索引,可以执行以下操作

current_gages[current_gages['site_no'].isin(pd.merge(current_gages, ucol_gages, on=['site_no'], how='inner')['site_no'])].index.values.tolist()

希望这有帮助;)

相关问题 更多 >