Цифровая грамотность домашки — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Задание 3: Уточение второго условия)
Строка 50: Строка 50:
  
 
'''Внимание: При нарушении правил сдачи задание может быть оценено в 0 баллов!'''<br />
 
'''Внимание: При нарушении правил сдачи задание может быть оценено в 0 баллов!'''<br />
 +
 +
== Задание 4 ==
 +
'''Дедлайн 09.10.2017 23:59'''. <br />
 +
'''0.''' Выполните [[#Бонусная часть - извлечение данных из исходника с помощью регулярных выражений|бонусную часть]] или скачайте готовую [https://docs.google.com/spreadsheets/d/1Nz7q2cw0G0qu4ALygXchW_wuMs7ZutL4E5WIV3Avco4/edit?usp=sharing таблицу].<br />
 +
'''1.''' Постройте столбец "Предполагаемое окончание службы" по правилу: ''Если в тексте не найдено окончание службы, то оно равно началу службы + 1 год.''<br />
 +
'''2.''' Подсчитайте длительность службы для каждого дьяка/подьячего. Подсчитайте, сколько в среднем служили дьяки и подьячие и запишите в конце столбца "Длительность" .<br />
 +
'''3.''' Отсортируйте дьяков и подьячих по длительностям службы по убыванию. <br />
 +
'''4.''' Постройте столбчатую диаграмму по срокам службы.<br />
 +
'''5.''' '''Бонусное задание''': С помощью [https://support.office.com/ru-ru/article/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%83%D1%81%D0%BB%D0%BE%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE-%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-%D1%81-%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E-%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D1%8B-fed60dfa-1d3f-4e13-9ecb-f1951ff89d7f Условного форматирования] покрасьте одним цветом дьяков, другим - подьячих.<br />
 +
'''6.''' Сохраните полученную таблицу в PDF-формате.
 +
 +
 +
=== Бонусная часть - извлечение данных из исходника с помощью регулярных выражений ===
 +
Скачайте [https://drive.google.com/file/d/0ByLHeRX-gMWMT2dxTTA0TWZXc1E/view?usp=sharing '''файл'''] с отрывком из работы С. Б. Веселовского [https://elibrary.ru/item.asp?id=22024689 ДЬЯКИ И ПОДЬЯЧИЕ XV -XVII ВВ].<br />
 +
Вам необходимо получить таблицу в Excel/Google Sheets с должностями и сроками службы вида:<br />
 +
 +
{| class="wikitable"
 +
|-
 +
! Имя, Фамилия !! Должность  !! Начало службы !! Окончание службы, найденное в тексте !! Предполагаемое окончание службы !! Длительность
 +
|-
 +
| Амирев Артемий || подьячий || 1646 || 1648 || 1648 || 2
 +
|-
 +
| Амирев Василий || дьяк || 1529 ||  || 1530 || 1
 +
|}
 +
 +
Чтобы ее построить, решите '''вспомогательные задания''':<br />
 +
'''1.''' Обратите внимание на записи, где для одного человека указаны несколько должностей, например <br />
 +
''Путилов Спиридон - подьячий Потешного двора, 15 июля 1670 г. по 1671 г.; 8 июля 1671 г. подьячий.''<br />
 +
С помощью регулярных выражений '''замените''' каждую такую запись на две отдельные записи:<br />
 +
''Путилов Спиридон - подьячий Потешного двора, 15 июля 1670 г. по 1671 г.;''<br />
 +
''Путилов Спиридон - 8 июля 1671 г. подьячий.''<br />
 +
(Совет: используйте обратные ссылки \1 \2 и.т.д.)<br />
 +
'''2.''' С помощью регулярных выражений из исходного текста получите столбец с '''именами и фамилиями'''.<br />
 +
'''3.''' С помощью регулярных выражений из исходного текста получите столбец с '''должностями''' - дьяк или подьячий.<br />
 +
Давайте заметим, что теперь в каждой записи может быть либо два четырехзначных числа (вначале дата начала, потом дата окончания службы), либо одно четырехзначное (дата начала).<br />
 +
'''4.''' С помощью регулярных выражений из исходного текста получите столбец с '''датами начала службы'''.<br />
 +
'''5.''' С помощью регулярных выражений из исходного текста получите столбец с '''датами окончания службы'''. Обратите внимание, что таких может и не быть в записи. В этом случае, ячейка должна пустовать.<br />
 +
'''6.''' Перенесите столбцы в Excel/Google Sheets. <br />
 +
 +
''' Важно! Правила сдачи: '''<br />
 +
Создаем отдельный репозиторий на [https://github.com/ GitHub] (Важно: под тем же самым профилем, под которым Вы сдавали первое дз) с именем '''DL_homework_4'''. Под задание нужен отдельный файл в репозитории с именем '''table.pdf''' с построенной таблицей и файл '''bonus.txt'''.
 +
==== Формат файла bonus.txt: ====
 +
Первые четыре строки должны содержать описание того, что Вы делали, чтобы решить каждое задание из [[#Бонусная часть - извлечение данных из исходника с помощью регулярных выражений|бонусной части]]. Например:<br />
 +
''1 строка: Использовал регулярное выражение: ... заменил все вхождения на ...''<br />
 +
...<br />
 +
''4 строка: Использовал регулярное выражение: ... заменил все вхождения на ...<br />''
 +
''5 строка: Использовал регулярное выражение: ... заменил все вхождения на ...<br />''
  
  

Версия 00:27, 2 октября 2017

Задание 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. С помощью регулярных выражений из исходного текста получите столбец с именами и фамилиями.
3. С помощью регулярных выражений из исходного текста получите столбец с должностями - дьяк или подьячий.
Давайте заметим, что теперь в каждой записи может быть либо два четырехзначных числа (вначале дата начала, потом дата окончания службы), либо одно четырехзначное (дата начала).
4. С помощью регулярных выражений из исходного текста получите столбец с датами начала службы.
5. С помощью регулярных выражений из исходного текста получите столбец с датами окончания службы. Обратите внимание, что таких может и не быть в записи. В этом случае, ячейка должна пустовать.
6. Перенесите столбцы в Excel/Google Sheets.

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

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

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



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