TGViewer
PPC для сверхразумов | Александр Хитро PPC для сверхразумов | Александр Хитро @ppc_bigbrain · 3.88K subscribers
Post #1718 995
В каком порядке оптимальнее обрабатывать данные.

Предыдущие посты серии:

1. Документация по промптам.
2. Выбор нейронок.
3. Подготовка к разработке.
4. Оптимизация кода.
5. Если код не "летает".
6. Минимизируем вычисления.
7. Фатальный пример вычислений.


1️⃣ Удаляем ненужные столбцы.

2️⃣ Обрабатываем не исходный массив с разбивкой по датам и другим атрибутам, а в новом запросе ссылаемся на этот массив, получаем список уникальных значений из нужного столбца.

3️⃣ Обрабатываем уникальные значения в новом столбце.

4️⃣ Если эти данные нужны на следующих этапах — объединяем исходный массив с этим запросом по общему полю.

5️⃣ Если эти данные нужны в таком виде в конечной визуализации данных:
а) Выгружаем второй запрос в модель данных.
б) Объединяем две таблицы по ключевому полю в модели данных, т.к. это работает быстрее.

✅ Нет необходимости понимать код. Достаточно понимать, как попросить нейронку:

1. Обратиться к нужным таблицам и столбцам.
2. Какие операции нужно сделать.
3. Что должно получиться в результате.
4. Какие вычисления безопасны: O(1), O(log n), O(n), O(n + m).
5. А какие — смерть для производительности: O(n log n), O(n × m), O(n²), O(nᵏ), O(2ⁿ), O(n!).


✅ Если группировать, фильтровать, сортировать таблицу нужно по списку полей, названия и количество которых могут меняться от проекта к проекту, для возможности использования кода в других проектах, список этих полей нужно получить динамически:

😶 Либо обратившись к умной таблице в Excel, куда вводить вручную эти значения, и передавать их дальше в код просто как название списка (количество элементов в списке и их значения при этом будут не важны).

😶 Либо вычленив общие текстовые паттерны в заголовках этих полей и отфильтровав:
1. Значение: {"Текст"}.
2. Хардкод списка (так делать не нужно): {"Текст1", "Текст2", "Текст3"}.
3. Имя списка, который динамически получает список текстовых значений.

Примеры, как их отфильтровать (список неполный, ибо способов — уйма) по:

— Содержанию: List.Contains
— Отсутствию: not List.Contains
— Началу: Text.StartsWith
— Не началу: not Text.StartsWith
— Окончанию: Text.EndsWith
— Не окончанию: not Text.EndsWith

😶 Либо обратив внимание на расположение в таблице самих полей и если они находятся:

— Или всегда в начале;
— Или всегда в конце;
— Или идут подряд;
— Или стоят до, после или между полями с заведомо известными значениями;

То получить функцией Table.ColumnNames список полей таблицы, а дальше отфильтровать их:

— Взяв N элементов с начала списка: List.FirstN
— Взяв N элементов с конца списка: List.LastN
— Удалив N элементов в конце списка: List.RemoveLastN
— Получив диапазон значений между N и M позициями списка: List.Range
— Пропустив N элементов с начала списка: List.Skip

✅ Преобразуем список уникальных значений:

😶 Удаляем дубликаты, пустоты, null.

😶 В начале следующего запроса буферизуем его: List.Buffer.

В следующем посте — о смерти производительности кода в Power Query.

via @ppc_bigbrain
More from @ppc_bigbrain
  1. Jun 3, 2026эмэйзинг нейродрисня когда пытаешься вправить нейтронке мозги из задницы в процессор, созд…
  2. May 27, 2026ну и чё теперь делать? а ведь был шанс via @ppc_bigbrain
  3. May 23, 2026маркетологи, как вам портрет платежеспособной аудитории? сохраняем или осуждаем? via @ppc_…
  4. May 21, 2026Что вы попробовали в своей карьере из любых родов деятельности один раз и сразу поняли, чт…
  5. May 20, 2026шта? абисните плес, я прост с деревни шёл 8к26 век, впнологи щщщетали цену клика калкурент…
  6. May 14, 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 →