TGViewer
OnlyAnalyst by Алексей Гаврилов OnlyAnalyst by Алексей Гаврилов @onlyanalystgroup · 2.45K subscribers
Post #38 1.25K
😀 Всем привет!

🐼 Я уверен, что вы все использовали методы Pandas .iloc и .loc,которые позволяют нарезать 🔪 данные. Но задумывались ли вы когда-нибудь, какой из них быстрее? Давайте выясним! 🕵️‍♂️

🦄 Сначала давайте создадим два DataFrame для сравнения методов:

# импортируем необходимые библиотеки

import pandas as pd
import numpy as np

# Создаем данные со значениями от 0 до 100 и размеренностью 100_000 на 5

data = np.random.randint(0, 100, size=(100000, 5))

# Создаем DataFrame и даем название столбцами

df = pd.DataFrame(data, columns=list('ABCDE'))

⚖️ За меру возьмем срез от 0 до 500 индекса:

rows = range(0, 500)

🪄 С помощью magic word timeit сравним скорость выполнения методов:

%timeit df.iloc[rows]

67.9 µs ± 219 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)

%timeit df.loc[rows]

169 µs ± 1.52 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

🏎️ .iloc оказался в в 2.5 раза быстрее, чем .loc. в данном случае. Это потому что .iloc использует индексацию на основе целых чисел, тогда как .loc использует индексацию на основе меток.

🔢 Поскольку наш индекс является диапазоном целых чисел, то .iloc может воспользоваться этим преимуществом и показать хорошие результаты.

📍Однако, если вы работаете с DataFrame, который в качестве индексов использует метки, то .loc может оказаться быть быстрее.

📚Задание: попробуйте сравнить данные методы в других условиях и поделитесь результатами.

🧸 В комментариях буду теперь прикладывать код в формате .ipynb, чтобы Вам было удобнее.

#pandas
  • ❤ 9
  • 🔥 7
More from @onlyanalystgroup
  1. Oct 1, 2026Что, если заменить аналитиков нейросетью? Да ничего хорошего: результаты анализа получаютс…
  2. Sep 24, 2026Post #492
  3. Aug 31, 2026Хорошие новости: все ребята с прошлого потока нашли работу. А значит, можно открывать осен…
  4. Aug 31, 2026OnlyAnalyst by Алексей Гаврилов pinned a photo
  5. Aug 19, 2026Бесплатный ии-агент, который мы заслужили Конечно же тут работает правило, что если что-то…
  6. Aug 10, 2026Новые времена требуют новых решений! Я поддался хайпу и полностью отказался от джунов и да…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →