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

Материал из 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) должны оказаться в корне репозитория!). В настройках репозитория "Settings"->"Github pages" выберите master-ветвь. После нажатия "Save" в этом разделе появится ссылка на github-страницу с графом. Укажите эту ссылку в файле README.md.


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