Якщо Ви хочете знати, як працює міська рада, наскільки активні депутати, хто з депутатів є найбільшим прогульником тощо. Ми підготували коротку інструкцію, як це зробити швидко та без значних часових затрат.

Важливою характеристикою роботи депутата міської ради є дані щодо його голосувань

Однією з важливих характеристик роботи депутата міської ради є дані щодо його голосувань. Тобто, це всі голосування, що виносилися на сесіях міської ради, де депутат може проголосувати - так, ні, утримався, або просто не голосувати. Періодично ми стикаємося з потребою порахувати ці голосування за різні проміжки часу. Якщо робити це “вручну”, то це займе тривалий період часу. Саме тому ми можемо використати для цих маніпуляцій можливості локальних сервісів rada4you.

Як приклад, використаємо платформу міста Львова -lviv.rada4you.org. Сам ресурс дозволяє отримати дані щодо голосувань депутата як за всю каденцію, так і за кожний окремий місяць, проте, якщо нам потрібно вибрати інший період (квартал, чи півроку) знову потрібно буде проводити додаткові розрахунки.

API сервісу та код

Спробуємо використати можливості API сервісу та середовище для аналізу даних R. В попередньому блозі ми описували, що таке API і як встановити R та оболонку R-Studio.

Отже, для нашого обрахунку скачуємо кодlviv_period.R, який доступний на платформі github за посиланням

r4y1

Початок роботи з API сервісу у середовищі R

Після отримання коду запускаємо R-Studio і відкриваємо наш файл.

Якщо потрібно порахувати дані для іншого міста вставляємо посилання на API міста у відповідних рядках.

Нагадаємо, що портали створені для 6 міст, а саме:

Для заміни міста достатньо змінити назву міста у посиланні. Наприклад, посилання в рядку №8 для міста Харків виглядатиме так https://kharkiv.rada4you.org/api/mps.json

r4y2

У відповідному рядку обираємо період за який потрібно провести розрахунки (приклад рядка на малюнку за номером 17). В нашому випадку, проводиться розрахунок даних голосувань за період з січня по травень 2018 року.

Слід зазначити, що на локальних сервісах rada4you дані щодо голосувань пораховані помісячно, тому, якщо в місяць було більше одного засідання сесії міської ради, то й результати будуть сумарні. 

Отримання даних голосувань та опрацювання результатів

r4y3

Виділивши весь текст коду у середовищі R (важливо не пропустити жодного символу) запускаємо його натиснувши Run

Програма почергово обирає кожного депутата, виділяє дані голосувань за вказаний в коді період і додає їх, після чого отримані дані формуються в

таблицю, яка записується у вигляді текстового csv-файлу. Сам процес розрахунку триває кілька хвилин, залежно від кількості даних.

Отриманий csv-файл, який можна відкрити у більш простіших та звичних програмах для користувача: Microsoft Office (Excel) , або ж у Libre Office.

Отже ми отримали таблицю, яка виглядає наступним чином.

r4y4

де 

first_name - ім’я депутата;

last_name - прізвище депутата;

dep_id - унікальний ідентифікатор депутата;

rebellions - кількість голосів, коли депутат голосував проти лінії фракції. Такий показник обраховується для фракцій, де не менше 5 депутатів;

not_voted - кількість голосувань, коли депутат не голосував;

absent - кількість випадків, коли депутат був відсутній;

against - кількість випадків, коли депутат проголосував “проти”;

aye_voted - кількість випадків, коли депутат проголосував “За”;

abstain - кількість випадків, коли депутат утримався;

votes_possible - кількість голосувань міської ради в визначений період;

votes_attended - кількість голосувань, на яких депутат був присутній.


Тепер ми можемо проаналізувати отримані дані і, наприклад, визначити лідерів серед депутатів в категоріях результатів голосувань, визначити який депутат найчастіше відсутній на засіданнях, хто не голосував за визначений період, або який депутат найчастіше голосує не так, як більшість з фракція, до якої він належить тощо.