Цифровая грамотность домашки

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Задание 1

Дедлайн 11.09.2017 23:59.
Важно: После дедлайна работы не принимаются.

  1. Установить SourceTree или оригинальный Git-клиент, кому не удалось это сделать на семинаре.
  2. Сделать свой сайт (персональную страничку) на Github-Pages, описанный в конце семинарского конспекта.
    Требования к страничке: заголовок, фото или картинка, коротко о себе, одна-две ссылки на vk или github-профиль.
  3. Пройти опрос с wiki-страницы, чтобы мы могли проверить пункт 2.

Бонусные баллы
За дополнительное оформление персональной странички.


Задание 2

Дедлайн 20.09.2017 23:59.
0. Установить notepad++ или Geany (или любой другой редактор, способный работать с регулярными выражениями).
1. Дан файл опрос.txt. Это часть ответов на опрос с Wiki-страницы. Файл отличается от задания с семинара! Задание: выписать регулярное выражение, которое найдет все записи, относящиеся к Вашей группе.
2. Дан файл emails.txt. Это коллекция email-писем корпорации Enron (оригинал). Задание: выписать регулярное выражение, которое найдет все e-mail адреса в файле, начинающиеся с латинской буквы O без учета регистра (то есть и с заглавной O, и с прописной o). Например, oksana@gmail.com.
3. Бонусное задание: для файла emails.txt выписать регулярное выражение, которое найдет все письма, отправленные в период времени 00:00-03:00. Регулярное выражение должно выдавать именно строки с message-ID.

Важно! Правила сдачи:
Создаем отдельный репозиторий на GitHub (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем DL_homework_2. Под каждое задание нужен отдельный файл в репозитории с именами task_1.txt, task_2.txt, task_3.txt

Формат файла task_X.txt:

1. На первой строке файла: регулярное выражение.
2. На второй строке файла: сколько было найдено совпадений по этому регулярному выражению. Число!
3. С третьей и далее: все строки, найденные этим регулярным выражением.

Внимание: При нарушении правил сдачи задание может быть оценено в 0 баллов!


Задание 3

Дедлайн 29.09.2017 23:59.

Скачайте файл с Повестью Временных Лет.
Летопись необходимо отредактировать следующим образом:
1. Удалить все пустые строки.
2. После каждого знака препинания поставить пробел (но выставлять их стоит только если того требуют правила русского языка).
3. Найти всех князей и города, имя и название которых оканчивается на "слав".
4. Найти все упоминания Новгорода. Учтите, что написание может быть разным.

Важно! Правила сдачи:
Создаем отдельный репозиторий на GitHub (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем DL_homework_3. Под задание нужен отдельный файл в репозитории с именем task_1.txt.

Формат файла task_1.txt:

Первые четыре строки должны содержать описание того, что Вы делали, чтобы решить каждое задание. Например:
1 строка: Использовал регулярное выражение: ... заменил все вхождения на ...
2 строка: Использовал регулярное выражение: ... заменил все вхождения на ...
3 строка: Использовал регулярное выражение: ... Всего упоминаний о князьях нашел: (число)
4 строка: Использовал регулярное выражение: ... Всего упоминаний Новгорода нашел: (число)

На следующих строках должна быть летопись после обработки.

Внимание: При нарушении правил сдачи задание может быть оценено в 0 баллов!

Задание 4

Дедлайн 09.10.2017 23:59.
0. Выполните бонусную часть или скачайте готовую таблицу.
1. Постройте столбец "Предполагаемое окончание службы" по правилу: Если в тексте не найдено окончание службы, то оно равно началу службы + 1 год.
2. Подсчитайте длительность службы для каждого дьяка/подьячего. Подсчитайте, сколько в среднем служили дьяки и подьячие, и запишите в конце столбца "Длительность" .
3. Отсортируйте дьяков и подьячих по длительностям службы по убыванию.
4. Постройте столбчатую диаграмму по срокам службы.
5. Бонусное задание: С помощью Условного форматирования покрасьте одним цветом дьяков, другим - подьячих.
6. Сохраните полученную таблицу в PDF-формате.


Бонусная часть - извлечение данных из исходника с помощью регулярных выражений

Скачайте файл с отрывком из работы С. Б. Веселовского ДЬЯКИ И ПОДЬЯЧИЕ XV -XVII ВВ.
Вам необходимо получить таблицу в Excel/Google Sheets с должностями и сроками службы вида:

Имя, Фамилия Должность Начало службы Окончание службы, найденное в тексте Предполагаемое окончание службы Длительность
Амирев Артемий подьячий 1646 1648 1648 2
Амирев Василий дьяк 1529 1530 1

Чтобы ее построить, решите вспомогательные задания:
1. Обратите внимание на записи, где для одного человека указаны несколько должностей, например
Путилов Спиридон - подьячий Потешного двора, 15 июля 1670 г. по 1671 г.; 8 июля 1671 г. подьячий.
С помощью регулярных выражений замените каждую такую запись на две отдельные записи:
Путилов Спиридон - подьячий Потешного двора, 15 июля 1670 г. по 1671 г.;
Путилов Спиридон - 8 июля 1671 г. подьячий.
(Совет: используйте обратные ссылки \1 \2 и.т.д.)
2. С помощью регулярных выражений из текста, измененного 1 заданием, получите столбец с именами и фамилиями.
3. С помощью регулярных выражений из текста, измененного 1 заданием, получите столбец с должностями - дьяк или подьячий.
Давайте заметим, что теперь в каждой записи может быть либо два четырехзначных числа (вначале дата начала, потом дата окончания службы), либо одно четырехзначное (дата начала).
4. С помощью регулярных выражений из текста, измененного 1 заданием, получите столбец с датами начала службы.
5. С помощью регулярных выражений из текста, измененного 1 заданием, получите столбец с датами окончания службы. Обратите внимание, что таких может и не быть в записи. В этом случае, ячейка должна пустовать.
6. Перенесите столбцы в Excel/Google Sheets.

Важно! Правила сдачи:

Создаем отдельный репозиторий на GitHub (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем DL_homework_4. Под задание нужен отдельный файл в репозитории с именем table.pdf с построенной таблицей и файл bonus.txt.

Формат файла bonus.txt:

Первые пять строк должны содержать описание того, что Вы делали, чтобы решить задания 1-5 из бонусной части. Например:
1 строка: Использовал регулярное выражение: ... заменил все вхождения на ...
...
4 строка: Использовал регулярное выражение: ... заменил все вхождения на ...
5 строка: Использовал регулярное выражение: ... заменил все вхождения на ...


Задание 5

Дедлайн 21.10.2017 23:59.
Результатом задания должен быть отчёт, сохраненный в PDF! (см. Правила сдачи)
1. Сравните частоту употреблений слов "ныне" и "сейчас" в разное время (например, в 18, 19, 20 веках) на основе Национального корпуса русского языка. С помощью Excel постройте столбчатые диаграммы по частотам употреблений этих слов в 18-20 веках (основной подкорпус). Сравните частоты употреблений в основном и поэтическом подкорпусах. Напишите небольшой отчёт, включите в него иллюстрации и их интерпретацию.
2. Перед Вами несколько диалогов. Могли ли они встретиться в таком виде во времена правления Екатерины Второй? Подкрепите свои рассуждения данными из Национального корпуса русского языка. Полученные выводы включите в отчёт.

 — Отдай!
 — Пиши пропало. Что пряжка, третьего дня эта поганка у меня с груди звезду Александра Невского уперла! Любит, сволочь, блестящее.
 — Ох, ну просто немыслимо! Нет, как можно быть таким лопухом?!
  — Я гнева вашего никак не растолкую. Он в доме здесь живет, великая напасть!

3. Бонусное задание. Посмотрите динамику употребления слова "щас" в основном подкорпусе с 1950 года до наших дней, постройте график. Сравните употребление слова "щас" в текстах разных жанров (жанр можно задать при выборе подкорпуса. Включите анализ полученных результатов в отчет.
4. Бонусное задание. Найдите в основном подкорпусе сочетания "история/философия + существительное в Р.п" (историкам -- история, философам -- философия), скачайте выдачу в формате Excel (ссылка на скачивание будет в самом низу), отсортируйте строки по столбцу F (там будут существительные в Р.п.) и проанализируйте результаты. Какая история/философия упоминается в корпусе чаще всего? Выводы включите в отчет.

Важно! Правила сдачи:

Создаем отдельный репозиторий на GitHub (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем DL_homework_5. Отчёт нужно писать в Word (или любом аналоге), затем конвертировать этот файл в PDF, итоговый файл должен называться ruscorpora_report.pdf. Перед сдачей проверьте, пожалуйста, что иллюстрации, поля и форматирование документа в порядке. Придерживайтесь строгого стиля.

Задание 6

Дедлайн 15.11.2017 23:59.

Анализ социальных сетей

Укладка
Раскраска по классам модулярности
Расчет модулярности
Содержимое репозитория ("После этого" равно "после экспорта"), скриншот из конспекта семинара

1. Постройте ориентированный граф своих друзей, используя приложение.
2. Откройте полученный .gexf файл с помощью gephi
Если не удаётся установить gephi или приложение выдаёт ошибку, ознакомьтесь с этой инструкцией.
3. Измените внешний вид графа: запустите алгоритм укладки (раздел "Window"->"Layout"), подберите оптимальные значения параметров, отредактируйте ширину и цвет ребер графа, цвет и размер узлов.
4. Рассчитайте модулярность графа (раздел "Window"->"Statistics"->"Modularity") и раскрасьте граф по классам модулярности (раздел "Window"->"Appearance"->"Nodes"->"Partition"). Проанализируйте полученный результат: насколько корректные получились сообщества? Соответствуют ли они действительности?
5. Во вкладке "Preview" выберите фон, цвета подписей, размер узлов и.т.д.
6. Установите "Sigma.js export plugin" ("Tools"->"Plugins"->"Available Plugins").
7. Экспортируйте граф через Sigma.js plugin ("File"->"Export"->"Sigma.js template"). В первой строке необходимо указать директорию, куда граф будет экспортирован. Также укажите в соответствующих полях, что означают узлы, ребра и цвета, добавьте описание. Результатом экспорта является папка network в указанной директории.

Важно! Правила сдачи:

Создайте отдельный репозиторий на GitHub (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем DL_homework_6. Загрузите файлы из экспортированной папки network в репозиторий (Файл index.html и другие файлы рядом с ним (то есть все содержимое папки network) должны оказаться в корне репозитория, файл ".gitignore" необязателен!). В настройках репозитория "Settings"->"Github pages" выберите master-ветвь. После нажатия "Save" в этом разделе появится ссылка на github-страницу с графом. Укажите эту ссылку в файле README.md.


P.S. По вопросам, связанным с дз, обращайтесь, пожалуйста, в Telegram-группы нашего курса. Ссылки есть на Wiki.