#!/usr/bin/env python
# coding: utf-8
# # Майнор по Анализу Данных, Группа ИАД-2
# ## Домашнее задание №0
#
# **Общая информация**
#
# **Срок сдачи:** 12 февраля 2017, 23:59
#
# При отправлении ДЗ на почту `hse.minor.dm+2@gmail.com` указывайте фамилию в названии файла, а тему письма оформляйте в следующем виде:
# ** [ИАД-2] *{Фамилия}* *{Имя}* ДЗ*{Номер}* **
#
# Сопровождайте ваш код изображеними, комментариями и выводами.
# Иммейте ввиду, что на некоторые задачи нет единственного верного и полного ответа. Чем больше информации вы сможете извлечь, аргументированных выводов сформулировать, тем лучше.
#
# Используйте данный Ipython Notebook при оформлении домашнего задания.
#
# ## Качество вина
# #### Задание 1 (2 балла)
# Загрузите [датасет](https://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-red.csv) с информацией о характеристиках вина и его качестве.
# In[ ]:
## Your code herezz
# * Что из себя представляет объект в этом наборе данных? Сколько их?
# * Какие признаки описывают объекты? Сколько их?
# * Какой признак является целевым?
# * Каковы их области значений?
# * Есть ли пропуски?
# In[ ]:
## Your code here
# #### Задание 2 (1 балл)
# Создайте новый столбец `quality_cat`, которая будет иметь значение `1` если `quality > 5` и `0` - иначе.
# In[ ]:
## Your code here
# #### Задание 3 (1 балл)
# С помощью метода `.hist()` нарисуйте гистрограммы признака `alcohol` в группах с `quality_cat == 1` и `quality_cat == 0`. Добавьте в `hist()` аргумент `alpha=0.3` для прозрачности.
# In[ ]:
## Your code here
# #### Задание 4 (2 балла)
# Можете ли вы придумать правило для классификации вина на хорошее и плохое по рисунку выше? Пусть это будет нашей первой моделью)
#
# Напишите функцию `theta = brute_clf_train(df)` которая бы перебирала пороговое значение $\theta$ по признаку `alcohol`, делало предсказание и выводило наилучшее $\theta$.
# Т.е. если `alcohol` $\geq \theta$, то `prediction = 1` и `0` - иначе.
#
#
# Оптимальность $\theta$ будем определять по доле совпадения значений `prediction` и `quality_cat` которое оно дает.
# In[ ]:
## Your code here
# #### Задание 5 (4 балла)
# Напишите функцию `prediction = brute_clf_predict(df, theta)` которая бы по значению признака `alcohol` и найденному выше $\theta$ говорила какое качество у вина.
# Проверим, как обобщается наша модель на другие данные.
#
# * Загрузите другой [датасет](https://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/winequality-white.csv)
# * Выполните те же панипуляции с признаком `quality`
# * Используйте нашу простейшую модель для предсказания качества на новых данных и сравните результаты
# In[ ]:
## Your code here