## Домашнее задание
В качестве домашнего задания вам предлагается проанализировать набор данных о транзакциях совершенных потребителями с использованием банковских карт. Ваша задача подготовить отчет о структуре данных и особенностях транзакций совершаемых мужчинами и женщинами. На основе такого анализа и любых других методов предложить набор фич на основе которых вы будете строить прогностическую модель. Обучить модель на предложенных обучающих данных и предсказать пол для клиентов из тестовой выборки (id в диапазоне от 3001 до 3500).
## Детальное описание
В результате выполнения вы должны поготовить отчет и файл с вашим прогнозом.
Отчет должен быть выполнен в формате Rmd, компилироваться и содержать следующие разделы:
1. Определение начальной даты. В данном разделе вы должны проанализировать распределения совершаемых операций. На основе этого анализа вы должны предложить дату для дня номер 0. Оценивается не точность определения даты, а обоснованность вашего предположения.
2. Определение пола. На основе анализа операций вы должны предложить расшифровку пола из 0/1 в М/Ж. Вы должны привести аргументы, подтверждающие ваш выбор. Оценивается не точность, а обоснованность вашего предположения.
3. Построение модели и отбор фич. Данный раздел должен содержать построение модели и отбор фич. Не забудьте разделить выборку на обучающую и тестовую. Предложите несколько моделей (как минимум, две) и сравните их по качеству работы на выделенной вами тестовой выборке. Вам предлагается построить прогноз пола и прогноз "вероятности" пола. Вы можете использовать одну и ту же модель для обоих прогнозов, а можете разные. И не забудьте об описании и обосновании действий
4. Прогноз . В этой части сопровождать код текстом не обязательно. Это служебная часть для создания итогового файла с прогнозом. Для выбранной вами модели, построенной в предыдущем разделе, постройте прогноз для заданной нами выборки transactionstest.csv (id в диапазоне от 3001 до 3500). Ваш прогноз должен быть записан в data.frame содержащий три поля: id, gender, gender_prob, где gender -- это ваш прогноз пола, а genderprob -- вероятность пола 1.
Это можно сделать, например, по следующей схеме (если используете этот чанк, то уберите опцию `eval = F` -- сейчас она добавлена, т.к. код c несуществующими переменными)
```{r eval = F}
library(readr)
transactionsTest = readcsv("~/shared/minor3_2017/3-SecondYear-ML/hw_data/transactionstest.csv")
tranformedTest =
# ваше предсказание пола
predGender = predict(model1, newdata = tranformedTest)
# ваше предсказание вероятности (может быть та же модель, может быть другая)
predProb = predict(model2, newdata = transactionsTest)
finaldata = data.frame(id = transactionsTest$id,
gender = predGender,
gender_prob = predProb)
```
Сохраните полученный data.frame с помощью
```{r, eval=FALSE}
library(readr)
writecsv(название_вашего_датафрейма, "вашлогин.csv")
```
Проверьте, что
файл создается
названия столбцов действительно id, gender, gender_prob
Загружать полученный csv-файл никуда не нужно -- для проверки мы создадим его сами по Вашему коду.