У меня есть фрейм данных коалы с ок. 6 миллионов строк в нем. Мне нужно выполнить операцию, в которой я читаю каждую строку во фрейме данных, извлекаю значения каждой строки и затем выполняю поиск в списке (этот список содержит 30 K элементов). Если найдено, верните true, иначе false, и создайте логический массив в качестве вывода.
Я знаю один простой способ сделать это - выполнить итерацию по каждой строке с помощью метода iterrows (). Но это отнимает много времени. Ищите рекомендации, которые могут ускорить процесс.
Например, пример фрейма данных -
species population
panda bear 1864
polar bear 22000
koala marsupial 80000
Теперь у меня есть список, в котором есть комбинация значений из моего столбца, Get значения каждой строки, например (медвежонок, 1864), если они найдены в тестовом списке, добавляют к списку true, если не false
test_list =[(bear,189), (bear,1864) , (marsupial,9), ..... ]
длина test_list составляет приблизительно 30k
Пример вывода будет
output = [True, False, False]
проверяется каждая отдельная строка выборочного фрейма данных, первая строка имеет значения (медвежий, 1864), поэтому в списке вывода в качестве первого элемента указан true. Второй ряд имеет значения (медведь, 1864), которых нет в списке. Следовательно, False добавляется в список вывода и т. Д.