Статья Автор: Деникина Н.В., Деникин А.В.

1.1 Данные как таблица — объект, признак, ответ

Таблица: объект, признак, ответ

Данные в машинном обучении — таблица. Строка — объект (один фильм), столбец — признак. Один столбец берём как ответ (что предсказываем). Столбец-название — идентификатор, не признак. Признаки бывают числовые (year, budget, score, gross) и категориальные (genre).

Таблица большая — 5435 фильмов, глазами не просмотреть. Поэтому мы её загружаем из файла movies.csv и считаем по ней кодом.


Как выглядит таблица (первые строки)

titlegenreyearbudgetgross
The ShiningDrama19801900000046998772
The Blue LagoonAdventure1980450000058853106
Star Wars: Episode VAction198018000000538375067
……………

Всего 5435 фильмов (IMDB, 1980–2020). budget и gross — в долларах.

title — идентификатор, genre — категориальный признак, year/budget/score/runtime — числовые, gross (сборы) — ответ.

Загрузка из CSV

Файл movies.csv прикреплён к тетради. Читаем его в список словарей функцией csv.DictReader. Числа из файла приходят как текст, поэтому в полной версии их приводят через int(...) — это делает функция load, которой мы пользуемся дальше.


▶ Попробуй: запусти. len(data) — сколько фильмов, len(data[0]) — сколько столбцов, data[0] — первый фильм.



Какой столбец — ответ (что предсказываем)?


Какой признак категориальный?


Отметь все числовые признаки, которые не являются ответом.


Что напечатает программа?

import csv
data = []
with open("movies.csv", encoding="utf-8") as f:
    for row in csv.DictReader(f):
        data.append(row)
print(len(data))

Верно или неверно?

Attached files
movies.csv
Печать