Перейти к содержанию

Советские христоматии (литература)

ruts.datasets.SovChLit

Описание

Модуль для работы с набором данных советских хрестоматий по литературе.

Для формирования набора данных используются оцифрованные издания проекта "Школьные учебники СССР":

  • Родная речь. Книга для чтения в I классе начальной школы. Е.Е. Соловьева, Л.А. Карпинская, Н.Н. Щепетова

Параметры

Параметр Тип По умолчанию Описание
data_dir str DEFAULT_DATA_DIR.joinpath("texts") Путь к директории с набором данных

Атрибуты

Атрибут Тип Описание
labels tuple[str] Кортеж уровней сложности текстов

Методы

download

Выполняет загрузку набора данных из сети и извлечение файлов.

Параметры:

Параметр Тип По умолчанию Описание
force bool - Загрузить набор данных, даже если он уже загружен

Рассмотрим пример загрузки набора данных и вывод информации о нем:

Пример

Код:

# Загрузка библиотек
from ruts.datasets import SovChLit

# Создание объекта набора данных
sc = SovChLit(data_dir='.')

# Загрузка набора данных
sc.download(force=True)

# Отображение информации о наборе данных
sc.info

Результат:

{'description': 'Корпус советских хрестоматий по литературе',
'url': 'https://dataverse.harvard.edu/file.xhtml?fileId=3670902&version=DRAFT',
'Наименование': 'sov_chrest_lit'}

get_texts

Выполняет извлечение текстов (без заголовков) из набора данных.

Параметры:

Параметр Тип По умолчанию Описание
grade int - Уровень сложности текстов
book str - Наименование книги
year int - Год издания книги
category str - Категория текстов
text_type str - Тип текстов
subject str - Наименование текстов
author str - Автор текстов
min_len int - Минимальная длина текста (в символах)
max_len int - Максимальная длина текста (в символах)
limit int - Количество текстов

Рассмотрим пример извлечения текстов из набора данных, выбрав только 1 текст из категории "Весна" длиной не более 100 символов:

Пример

Код:

# Загрузка библиотек
from ruts.datasets import SovChLit

# Создание объекта набора данных
sc = SovChLit()

# Отображение извлеченных текстов
for i in sc.get_texts(max_len=100, category='Весна', limit=1):
    print(i)

Результат:

В марте курочка под порожком водицы напьётся.
Март с водой, апрель с травой.
В апреле земля преет.

get_records

Выполняет извлечение записей (с заголовками) из набора данных.

Параметры:

Параметр Тип По умолчанию Описание
grade int - Уровень сложности текстов
book str - Наименование книги
year int - Год издания книги
category str - Категория текстов
text_type str - Тип текстов
subject str - Наименование текстов
author str - Автор текстов
min_len int - Минимальная длина текста (в символах)
max_len int - Максимальная длина текста (в символах)
limit int - Количество текстов

Рассмотрим пример извлечения записей из набора данных, выбрав только 1 запись из категории "Весна" длиной не более 100 символов:

Пример

Код:

# Загрузка библиотек
from ruts.datasets import SovChLit

# Создание объекта набора данных
sc = SovChLit()

# Отображение извлеченных текстов
for i in sc.get_records(max_len=100, category='Весна', limit=1):
    print(i)

Результат:

{'author': 'Е. Трутнева',
'book': 'Родная речь. Книга для чтения в I классе начальной школы',
'category': 'Весна',
'file': PosixPath('../ruTS/ruts_data/texts/sov_chrest_lit/grade_1/155'),
'grade': 1,
'subject': 'Дождик',
'text': 'В марте курочка под порожком водицы напьётся.\n'
        'В марте курочка под порожком водицы напьётся.\n'
        'В апреле земля преет.',
'type': 'Стихотворение',
'year': 1963}