Как проанализировать комментарии отдельной студии Scratch: различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) Новая страница: « ---- Категория:Lesson» |
Patarakin (обсуждение | вклад) Нет описания правки |
||
| Строка 1: | Строка 1: | ||
== Скрипт R == | |||
<syntaxhighlight lang="R" line> | |||
source("Scratch_API_core.R", encoding = "UTF-8") | |||
# === Шаг 1. Укажи здесь ID своей студии === | |||
studio_id <- 4945817 # ЗАМЕНИ на свой ID студии | |||
studio_lang <- "en" # можно указать язык для себя (en, ru, ...) | |||
message("Analyzing studio: ", studio_id, " (", studio_lang, ")") | |||
# === Шаг 2. Проекты студии === | |||
studio_projects <- get_studio_projects(studio_id, verbose = TRUE) | |||
# Посмотрим, что получилось | |||
studio_projects |> glimpse() | |||
# === Шаг 3. Анализ комментариев студии и проектов === | |||
comments_analysis <- analyze_studio_comments( | |||
studio_id = studio_id, | |||
studio_projects = studio_projects, | |||
verbose = TRUE | |||
) | |||
# В comments_analysis лежит список с несколькими таблицами: | |||
names(comments_analysis) | |||
studio_comments <- comments_analysis$studio_comments | |||
project_comments <- comments_analysis$project_comments | |||
authors_overlap <- comments_analysis$authors_overlap | |||
studio_text_stats <- comments_analysis$studio_text_stats | |||
project_text_stats <- comments_analysis$project_text_stats | |||
summary_metrics <- comments_analysis$summary_metrics | |||
studio_comments |> glimpse() | |||
project_comments |> glimpse() | |||
authors_overlap |> glimpse() | |||
str(summary_metrics) | |||
# === Шаг 4. Профиль "teamwork" для одной студии === | |||
studio_team_metrics <- tibble( | |||
studio_id = studio_id, | |||
lang = studio_lang, | |||
n_authors_total = summary_metrics$n_authors_total, | |||
n_only_studio = summary_metrics$n_only_studio, | |||
n_only_projects = summary_metrics$n_only_projects, | |||
n_both = summary_metrics$n_both, | |||
share_only_studio = summary_metrics$share_only_studio, | |||
share_only_projects = summary_metrics$share_only_projects, | |||
share_both = summary_metrics$share_both, | |||
mean_len_studio = summary_metrics$mean_len_studio, | |||
mean_len_project = summary_metrics$mean_len_project | |||
) | |||
studio_team_metrics | |||
# === Шаг 5. Ремиксная активность в студии === | |||
remix_stats <- get_studio_remix_stats( | |||
studio_id = studio_id, | |||
studio_projects = studio_projects, | |||
verbose = TRUE | |||
) | |||
remix_stats | |||
# === Шаг 6. Полный профиль teamwork для одной студии === | |||
studio_team_profile_one <- studio_team_metrics |> | |||
left_join( | |||
remix_stats, | |||
by = "studio_id" | |||
) | |||
studio_team_profile_one | |||
</syntaxhighlight> | |||
---- | ---- | ||
[[Категория:Lesson]] | [[Категория:Lesson]] | ||
Версия от 10:37, 31 марта 2026
Скрипт R
source("Scratch_API_core.R", encoding = "UTF-8")
# === Шаг 1. Укажи здесь ID своей студии ===
studio_id <- 4945817 # ЗАМЕНИ на свой ID студии
studio_lang <- "en" # можно указать язык для себя (en, ru, ...)
message("Analyzing studio: ", studio_id, " (", studio_lang, ")")
# === Шаг 2. Проекты студии ===
studio_projects <- get_studio_projects(studio_id, verbose = TRUE)
# Посмотрим, что получилось
studio_projects |> glimpse()
# === Шаг 3. Анализ комментариев студии и проектов ===
comments_analysis <- analyze_studio_comments(
studio_id = studio_id,
studio_projects = studio_projects,
verbose = TRUE
)
# В comments_analysis лежит список с несколькими таблицами:
names(comments_analysis)
studio_comments <- comments_analysis$studio_comments
project_comments <- comments_analysis$project_comments
authors_overlap <- comments_analysis$authors_overlap
studio_text_stats <- comments_analysis$studio_text_stats
project_text_stats <- comments_analysis$project_text_stats
summary_metrics <- comments_analysis$summary_metrics
studio_comments |> glimpse()
project_comments |> glimpse()
authors_overlap |> glimpse()
str(summary_metrics)
# === Шаг 4. Профиль "teamwork" для одной студии ===
studio_team_metrics <- tibble(
studio_id = studio_id,
lang = studio_lang,
n_authors_total = summary_metrics$n_authors_total,
n_only_studio = summary_metrics$n_only_studio,
n_only_projects = summary_metrics$n_only_projects,
n_both = summary_metrics$n_both,
share_only_studio = summary_metrics$share_only_studio,
share_only_projects = summary_metrics$share_only_projects,
share_both = summary_metrics$share_both,
mean_len_studio = summary_metrics$mean_len_studio,
mean_len_project = summary_metrics$mean_len_project
)
studio_team_metrics
# === Шаг 5. Ремиксная активность в студии ===
remix_stats <- get_studio_remix_stats(
studio_id = studio_id,
studio_projects = studio_projects,
verbose = TRUE
)
remix_stats
# === Шаг 6. Полный профиль teamwork для одной студии ===
studio_team_profile_one <- studio_team_metrics |>
left_join(
remix_stats,
by = "studio_id"
)
studio_team_profile_one
