Original size 1140x1600

Распространение трека JUMP группы BLACKPINK через танец

BLACKPINK in your area

BLACKPINK  — южнокорейская женская группа, работающая в жанрах K-pop и dance-pop. Группа известна яркими клипами и запоминающимися хореографиями, которые играют важную роль в их образе и популярности. Танец для BLACKPINK  — это не просто часть выступлений, а один из главных способов взаимодействия с аудиторией в интернете.

В 2025 году группа выпустила клип на трек JUMP, после чего песня быстро начала набирать популярность в формате коротких видео. Особенно заметным стал рост количества танцевальных роликов в TikTok, где пользователи массово повторяли и переосмысливали хореографию из клипа, используя оригинальный звук. Таким образом, трек стал активно распространяться не только через официальный релиз, но и через пользовательский контент.

В рамках данного проекта я анализирую танцевальные видео в TikTok, созданные с использованием трека JUMP. В работе рассматривается, как меняется количество таких видео, а также их просмотры и вовлечённость. Цель анализа — понять, насколько танцевальный формат стал основным способом распространения трека в коротких видео и как именно пользователи взаимодействуют с ним.

big
Original size 1920x925

Стиль

big
Original size 2370x420

Палитра стиля проекта, основанная на цветовой гамме BLACKPINK

Визуализации выполнены в едином минималистичном стиле с чёрным фоном и акцентным розовым цветом #F3A2B5, который используется для ключевых элементов графиков. Типографика основана на шрифте Inter, ориентированном на интерфейсный дизайн. Второстепенные элементы оформлены в нейтральных серых оттенках, что позволяет сохранить визуальную иерархию и сфокусировать внимание на данных. Цветовая палитра основана на основных оттенках группы BLACKPINK, параметры оформления заданы программно.

Методология и ограничения

Изначально планировалось провести анализ на основе данных YouTube Shorts с использованием открытых датасетов с платформы Kaggle. Предполагалось, что такие данные позволят отследить рост танцевальных коротких видео, связанных с релизом трека JUMP, а также проанализировать их просмотры и вовлечённость.

В ходе работы выяснилось, что выборка подобных датасетов является слишком широкой и обобщённой. Данные не содержат надёжной привязки к конкретному музыкальному треку, так как информация об используемом звуке в большинстве случаев отсутствует или не указывается явно.

В связи с этим было принято решение изменить источник данных и перейти к анализу платформы TikTok, где каждый ролик жёстко привязан к конкретному звуку. Такой подход позволил сформировать более точную выборку и сосредоточиться на изучении танцевального формата как способа распространения музыкального трека в коротких видео.

Для автоматизированного сбора данных в проекте была использована платформа Apify. В качестве источника данных применялась страница звука (sound page) трека JUMP в TikTok, что позволило отобрать только те видео, которые используют один и тот же аудиотрек. Такой подход обеспечивает корректность выборки и исключает нерелевантный контент.

post

Ссылка на страницу звука (точнее ID, так как Apify не принимал адрес) была передана в специализированный TikTok Sound Scraper на платформе Apify, где был задан лимит на количество собираемых видео. Инструмент автоматически извлёк данные о каждом видео, включая дату публикации, количество просмотров, лайков, комментариев и репостов, а также текст описания. Полученные данные были экспортированы в формате CSV и использованы для дальнейшего анализа и визуализации с помощью библиотеки Pandas.

Для работы с данными использовались библиотеки shutil и pandas. С помощью shutil файл датасета, полученный через Apify, был скопирован в рабочую директорию среды выполнения, после чего с использованием библиотеки pandas данные были загружены в DataFrame с помощью функции pd.read_csv ().

post

После загрузки датасета был выполнен первичный осмотр структуры данных с использованием функции df.head (), что позволило ознакомиться с содержимым первых строк таблицы и типами представленных данных. Далее с помощью функции df.info () была проанализирована структура датасета: количество строк и столбцов, типы данных, а также наличие пропущенных значений. В результате было установлено, что датасет содержит 300 записей и 13 столбцов, включая информацию об авторах видео, тексте публикаций, показателях вовлечённости, длительности видео, музыкальных метаданных и времени публикации.

Динамика количества видео с треком JUMP

Для дальнейшей обработки данных использовалась библиотека pandas. Временные метки публикации видео, содержащиеся в столбце createTimeISO, были преобразованы в формат календарной даты, при этом информация о времени публикации была отброшена. Далее были определены минимальная и максимальная даты публикации, что позволило установить временной диапазон анализируемого датасета и проверить корректность преобразования дат.

import pandas as pd
import matplotlib.pyplot as plt

df["date"] = pd.to_datetime(df["createTimeISO"]).dt.date
df["date"].min(), df["date"].max()

Пропущенные значения в числовых метриках вовлечённости были заменены на нулевые, что обеспечивает корректность последующего анализа.

metrics = ["playCount", "diggCount", "commentCount", "shareCount"]
df[metrics] = df[metrics].fillna(0)

На данном этапе все видео были сгруппированы по дням, после чего для каждой даты было подсчитано общее количество опубликованных. Полученная таблица была отсортирована в хронологическом порядке. Дополнительно к исходному временному ряду было применено 7-дневное сглаживание методом скользящей средней, что позволило уменьшить влияние резких суточных колебаний и более наглядно выявить общую тенденцию изменения активности пользователей.

videos_per_day = (
    df.groupby("date")
      .size()
      .reset_index(name="video_count")
      .sort_values("date")
)

videos_per_day["ma7"] = videos_per_day["video_count"].rolling(window=7, min_periods=1).mean()

Для визуализации и анализа динамики публикаций использовалась библиотека matplotlib. С её помощью был определён день максимальной активности путём поиска максимального значения количества опубликованных видео. Полученные значения применялись для акцентирования пикового момента на графике.

Была построена визуализация, включающая две линии: основную линию, отражающую фактическое количество танцевальных видео, опубликованных по дням, и второстепенную пунктирную линию, отображающую 7-дневную скользящую среднюю. Применение сглаживания позволило уменьшить влияние резких суточных колебаний и сделать общую тенденцию изменения пользовательской активности более наглядной.

На график была добавлена текстовая аннотация с указанием значения пика активности. Визуализация была оформлена заголовком и подписями осей.

peak_idx = videos_per_day["video_count"].idxmax()
peak_date = videos_per_day.loc[peak_idx, "date"]
peak_value = videos_per_day.loc[peak_idx, "video_count"]
plt.figure(figsize=(14, 6))

plt.plot(
    videos_per_day["date"],
    videos_per_day["ma7"],
    color=COLORS["secondary"],
    linewidth=2,
    linestyle="--",
    label="Скользящая средняя (7 дней)"
)

plt.plot(
    videos_per_day["date"],
    videos_per_day["video_count"],
    color=COLORS["accent"],
    linewidth=2.8,
    label="Количество видео"
)
plt.text(
    0.02, 0.92,
    f"Пик активности: {peak_value} видео",
    transform=plt.gca().transAxes,
    fontsize=11,
    color=COLORS["accent"]
)

plt.title("Динамика количества танцевальных видео с треком JUMP")
plt.xlabel("Дата публикации")
plt.ylabel("Количество видео")

plt.xticks(rotation=45)
plt.legend(frameon=False)
plt.tight_layout()
plt.show()
Original size 1384x584

Линейный график динамики количества танцевальных видео с треком JUMP

Распространение трека JUMP в формате танцевальных видео носит ярко выраженный всплесковый характер и напрямую связано с моментом релиза.

Просмотры по дням

Распространение трека JUMP группы BLACKPINK через танец
Project created at 17.01.2026
We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more