Добавьте values
для массива numpy для фильтра с iloc
, а затем используйте next
для возврата первого сопоставленного значения - если не существует, получите missing
:
a = sheet_overview.iloc[(sheet_overview.iloc[:, 1] == '1. 2.').values, 3]
a = next(iter(a), 'missing')
print (a)
23
Если важна производительность, используйте numba
:
from numba import njit
@njit
def first_val(A, k):
a = A[:, 0]
b = A[:, 1]
for i in range(len(a)):
if a[i] == k:
return b[i]
return 'missing'
a = first_val(sheet_overview.iloc[:, [1,3]].values, '1. 2.')