#!/usr/bin/env python # coding: utf-8 # # Домашнее Задание №1 # Шестаков А.В. Майнор по анализу данных 2016 # # **Общая информация** # # **Срок сдачи:** 2 февраля 2016 # **Штраф за опоздание:** -0.5 за каждый день # # При отправлении ДЗ на почту указывайте фамилию в названии файла, а тему письма оформляйте в следующем виде: # ** [Майнор ИАД 2016] *{Фамилия}* *{Имя}* ДЗ*{Номер}* ** # # # Сопровождайте ваш код изображеними, комментариями и выводами. # Иммейте ввиду, что на некоторые задачи нет единственного верного и полного ответа. Чем больше информации вы сможете извлечь, аргументированных выводов сформулировать, тем лучше. # # Используйте данный Ipython Notebook при оформлении домашнего задания. # # ### 1. Воздушные перевозки (с семинара) # # Скачайте и распакуте следующий [архив](http://stat-computing.org/dataexpo/2009/2008.csv.bz2). Описание полей таблицы дано [здесь](http://www.transtats.bts.gov/Fields.asp?Table_ID=236). # # Данные должны содержать перелеты воздушных судов в 2008 году (вероятно в США) # **Задание 1:** Рассчитать топ-10 массовых перевозчиков. # In[ ]: # Your code here.. # **Задание 2:** Построить распределение причин отмены рейсов # In[ ]: # Your code here.. # **Задание 3:** Найти самый популярный маршрут, выдать статистику по данному маршруту. # In[ ]: # Your code here.. # **Задание 4:** Найти топ-5 рейсов по каждому из типов delay. Каким перевозчикам они принадлежат? # In[ ]: # Your code here.. # **Задание 5:** Определить, как распределено количество рейсов от времени дня? # In[ ]: # Your code here.. # **Задание 6:** Определить "сезонность" во временных рядах по количеству вылетов на каждый день. # In[ ]: # Your code here.. # ### 2. Продолжаем изучать Pandas # Ввиду ограниченности времени, мы не успеваем рассмотреть всё на семинарах. Поэтому часть работы ложится на вас.. # # Загрузите две csv таблицы [отсюда](https://github.com/emorisse/FBI-Hate-Crime-Statistics) и импортируйте через Pandas. В них содержатся агрегированные данные по различным организациям\городам США, содержащие количество обращений по тем или иным случаям нарушения закона. В одной таблице (table13.csv) перечислены управления, которые сообщали об этих случаях, в другой - которые не сообщали. # # **Задание 1:** Изучите документации для методов `unique_values`, `isin`. С помощью этой функции, определите, содержатся ли в двух таблицах одни и те же штаты. # In[ ]: # Your code here.. # **Задание 2:** Изучите документации для методов `append`, `merge` и `concat`. Совместите две таблицы в одну. # In[ ]: # Your code here.. # **Задание 3:** Изучите документации для методов `drop_dublicates` и `dropna`. Используйте метод `dropna` для очистки большой таблицы от пропусков. Что произошло? Почему? Исправьте таблицы, чтобы получить корректный ответ. # In[ ]: # Your code here.. # **Задание 4:** Изучите документации для методов `set_index`, `reset_index` и `pivot_table`. Проиндексируйте общую таблицу по переменным State и Agency Type (одновременно). У вас должен появиться *мультииндекс*. # In[ ]: # Your code here.. # **Задание 5:** В Pandas можно идерировать по DataFrame! Ищучите документации для методов `iteritems`, `iterrows`, а так же посмотрите, как можно итерировать по сгруппированным DataFrame'ам. Выделите подтаблицу, состаящую из данных по 3 произвольным штатам и сгруппируйте её по переменным State и Agency Type. С помощью изученных методов (то есть итеративно) выведите суммарную популяцию по каждой паре <Штат>-<Тип> # In[ ]: # Your code here..