Проверка того, содержит ли массив Numpy определенную строку, может быть достигнута эффективно без перебора всего массива. Эта оптимизация становится особенно важной при работе с большими наборами данных.
1. Использование .tolist()
Преобразуйте массив Numpy в список для Pythonic и простого сравнения.
2. Использование представления
Создайте представление массива для эффективного выполнения поэлементного сравнения.
3. Генерация по массиву
Сгенерируйте по массиву Numpy, сравнивая каждую строку с целевой строкой. Обратите внимание, что этот метод может быть медленным для больших массивов.
4. Использование логических функций Numpy
Используйте логические функции Numpy, такие как np.equal, для выполнения эффективных поэлементных сравнений.
В то время как производительность каждый метод варьируется в зависимости от размера массива и шаблона поиска, np.equal, как правило, является самым быстрым чистым вариантом Numpy. Для ранних обращений оператор Python in может быть немного быстрее. Генераторный подход плохо работает при поиске в больших частях массива.
Вот результаты сравнительного сравнения:
Метод | Время (секунды) | Точность |
---|---|---|
Просмотр | 0,1 | Истина |
Список Python | 0.3 | True |
Генератор | 3.2 | True |
Логическое равенство | 0,1 | Истина |
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3