У меня есть два массива, и я хочу перебрать второй массив, чтобы возвращать только массивы, первый элемент которых равен элементу из другого массива.
a = [10, 11, 12, 13, 14]
b = [[9, 23, 45, 67, 56, 23, 54], [10, 8, 52, 30, 15, 47, 109], [11, 81,
152, 54, 112, 78, 167], [13, 82, 84, 63, 24, 26, 78], [18, 182, 25, 63, 96,
104, 74]]
У меня есть два разных массива, a и b. Я хотел бы найти способ просмотреть каждый из подмассивов (?) В b, в котором
первое значение равно значениям в массиве a для создания нового массива, c.
Результат, который я ищу:
c = [[10, 8, 52, 30, 15, 47, 109],[11, 81, 152, 54, 112, 78, 167],[13, 82, 84, 63, 24, 26, 78]]
Есть ли в Python инструмент, позволяющий сделать это так, как в Excel есть MATCH ()?
Я пытался зацикливаться таким образом:
for i in a:
if i in b:
print (b)
Но поскольку в массиве есть другие элементы, этот способ не работает. Любая помощь будет принята с благодарностью.
Дальнейшее объяснение проблемы:
a = [5, 6, 7, 9, 12]
Я читаю в файле Excel, используя XLRD (b_csv_data):
Start Count Error Constant Result1 Result2 Result3 Result4
5 41 0 45 23 54 66 19
5.4 44 1 21 52 35 6 50
6 16 1 42 95 39 1 13
6.9 50 1 22 71 86 59 97
7 38 1 43 50 47 83 67
8 26 1 29 100 63 15 40
9 46 0 28 85 9 27 81
12 43 0 21 74 78 20 85
Затем я создал вид для чтения в выбранном количестве строк. Для простоты этот файл выше имеет всего несколько строк. Мой текущий файл имеет около 100 строк.
for r in range (1, 7): #skipping headers and only wanting first few rows to start
b_raw = b_csv_data.row_values(r)
b = np.array(b_raw) # I created this b numpy array from the line of code above