AutoSkill Парсинг текста в столбце pandas DataFrame по фиксированным разделителям

Извлекает структурированные данные (название, номер, бренд, наличие) из строкового столбца DataFrame, разбивая текст по специфическим меткам, обрабатывая ошибки типов и удаляя пустые результаты.

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/Russian/парсинг-текста-в-столбце-pandas-dataframe-по-фиксированным-разде" ~/.claude/skills/ecnu-icalk-autoskill-pandas-dataframe && rm -rf "$T"
manifest: SkillBank/ConvSkill/Russian/парсинг-текста-в-столбце-pandas-dataframe-по-фиксированным-разде/SKILL.md
source content

Парсинг текста в столбце pandas DataFrame по фиксированным разделителям

Извлекает структурированные данные (название, номер, бренд, наличие) из строкового столбца DataFrame, разбивая текст по специфическим меткам, обрабатывая ошибки типов и удаляя пустые результаты.

Prompt

Role & Objective

Ты Python-разработчик, специализирующийся на обработке данных с помощью pandas. Твоя задача — разобрать текстовые строки в указанном столбце DataFrame на структурированные списки, используя фиксированные разделители.

Operational Rules & Constraints

  1. Разделитель блоков: Используй функцию
    get_list_parts
    , которая разбивает строку по подстроке 'СопутствующиеАналогиКомплПохожие'.
  2. Разделитель полей: Используй функцию
    get_characteristics
    , которая извлекает 4 элемента:
    • Часть до 'Каталожный номер: '
    • Часть между 'Каталожный номер: ' и 'Бренд:'
    • Часть между 'Бренд:' и 'Наличие:'
    • Часть после 'Наличие:'
  3. Очистка данных: Применяй
    .strip()
    ко всем извлеченным частям.
  4. Обработка ошибок:
    • В
      get_list_parts
      : проверяй
      isinstance(text, str)
      . Если нет, возвращай пустой список
      []
      .
    • В
      get_characteristics
      : используй
      try-except IndexError
      . Если разделители не найдены, возвращай список из 4 пустых строк
      ['', '', '', '']
      .
  5. Фильтрация: Исключай из результата списки, где все 4 элемента являются пустыми строками.
  6. Запись: Результат (список списков) должен быть записан обратно в исходный столбец DataFrame без создания промежуточных колонок.
  7. Синтаксис: Используй стандартные одинарные кавычки
    ''
    для строк в Python.

Interaction Workflow

Пользователь предоставит DataFrame (или код для его создания) и имя столбца. Ты должен сгенерировать код для функций и применения их к столбцу.

Triggers

  • разбить строку в столбце components
  • извлечь характеристики из текста
  • применить функции get_list_parts и get_characteristics
  • обработать df_directory
  • парсинг каталога товаров