TGViewer
Where is data, Lebowski Where is data, Lebowski @double_data · 219 subscribers
Post #94 244
Header всему голова
.
Кому не знакомы странные наименования столбцов в таблицах, выгрузках или API, например, deviceId или dReleaseDate. И каждый раз приходится ручками переименовывать, когда их 2-3 еще терпимо, но когда полей 20+, уже к 10 появляется 🤮
.
ps: все же переименовывают при помощи df.rename(columns={old_column_name: new_column_name}) 😉
.
Попробуем автоматизировать этот процесс. На помощь нам придут замечательные регулярные выражения (тот самый модуль re который ты обходил стороной и боялся как серебряной пули)
.
Создаем функцию camel_to_snake, которая:
- разделяет имена по заглавной букве
- переводит написание через нижнее подчеркивание
- переводит слова в LOWER CASE

import re

def camel_to_snake(name):
name = re.sub('(.)([A-Z][a-z]+|[А-Я][а-я]+)', r'\1_\2', name)
return re.sub('([a-z]|[а-я])([A-Z]|[А-Я])', r'\1_\2', name).lower()
.
Пользуйстесь наздоровье🙌
.
А вообще регулярки - это очень мощно, рекомендую обязательно ознакомится с фукнционалом модуля re:
- классная статья
- моя настольная книга
#regex #cameltosnake #code
  • 🔥 5
More from @double_data
  1. Oct 26, 2025😎😁 А какие у вас рабочие мемы ? . #meme
  2. Oct 11, 2025​​️⃣ Сортировка, не всё хорошо, что упорядочено! При создании таблицы указывается набор по…
  3. Oct 10, 2025​​💡 Sort (partition) me, if you can Разрываем осеннюю непогоду 🍁 заметками про Clickhous…
  4. Oct 8, 2025# Refreshable materialized view (продолжение) Ну как мне всё это мониторить 🖥 Для просмот…
  5. Oct 8, 2025​​# Refreshable materialized view . 💣 Что еще за Refreshable MV ? Ранее были рассмотрены…
  6. May 24, 2025​​🫣Я по рекомендации . Живем в эпоху рекомендательных систем: - рекомендуют что посмотрет…
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 →