gpt4 book ai didi

python - Pandas 数据框尝试检索数据框中的整数

转载 作者:行者123 更新时间:2023-12-01 09:06:34 25 4
gpt4 key购买 nike

我有一个 pandas 数据框,如下所示:

    s = index_df[(index_df['id2'].values  == result[z][3])]
print s.iloc[:, [0]]

这会给我结果

      id1
36 14559

我尝试将值 14559 存储到变量中,如下所示:

value = s.iloc[:, [0]]

但它一直给我一个错误:

ValueError: Incompatible indexer with DataFrame

知道如何解决这个问题吗?

编辑:

我的数据框声明如下:

结果:

result=[(fuzz.WRatio(n, n2),n2,sdf.index[x],bdf.index[y])
for y, n2 in enumerate(Col2['CSGNE_NAME']) if fuzz.WRatio(n, n2)>80 and len(n2) >= 2
]

这就是我声明并附加到数据框的方式:

index_df = pd.DataFrame(columns=['id1','id2', 'score'])
index_df = index_df.append({'id1':result[z][2], 'id2':result[z][3], 'score':result[z][0]}, ignore_index=True)

最佳答案

我相信需要:

s.iloc[:, 0]

或者:

s.iloc[0, 0]

或者将值转换为列表并使用 next 提取第一个值:

L = index_df[(index_df['id2'].values  == result[z][3])].values.tolist()

#use parameter if not matched condition and returned empty val
out = next(iter(L), 'no matched value')

示例:

index_df = pd.DataFrame({'id2':[1,2,3,2],
'id1':[10,20,30,40]})
print (index_df)
id2 id1
0 1 10
1 2 20
2 3 30
3 2 40

#if possible specify column name with .loc (`id1`)
L = index_df.loc[index_df['id2'].values == 2, 'id1']
#use parameter if not matched condition and returned empty val
#out = next(iter(L), 'no matched value')
print (out)
20

关于python - Pandas 数据框尝试检索数据框中的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51999736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com