Albus (Игорь Китаев)
Albus (Игорь Китаев) личный блог
04 апреля 2019, 22:09

Пэйроллы за 100 лет

Пост будет полезен только тем, кто кодит на Питоне.
Осваиваю базу данных quandl.com
Оттуда можно качать котировки, а можно и экономическую статистику. Например, там есть нонфарм-пэйроллы с 1921 года.
Как и положено питону, там всё очень просто.
Не знаю почему, пэйроллы с 1947 года по значениям сильно отличаются от предыдущих:
Пэйроллы за 100 лет
Будем брать те, которые идут с 1947 года.
Инструкция шаг за шагом.
1. Качаем питон, если он у вас до сих пор не установлен: https://www.python.org/
2. Открываем командную строку cmd.exe (чёрное окошко).
3. Пишем в нём pip install quandl
Пэйроллы за 100 лет
Это устанавливает библиотеку по работе с этой базой данных. Попутно подключается ещё одна библиотека — pandas. Это популярная библиотека для анализа данных.
4. Открываем программулину, которая установилась в комплекте с питоном:
Пэйроллы за 100 лет
Она нужна, чтобы запускать скрипты, написанные на питоне. Я пользуюсь для этого Notepad++, но это не важно.
5. Пишем в этой программе такой код:
import quandl #импортируем библиотеку для скачивания статистики
data=quandl.get("ACC/NFP", start_date="1947-01-01") #качаем пэйроллы, начиная с указанной даты. Они записываются в объект data
for index, row in data.iterrows(): #в цикле пробегаем по объекту data
	print(str(index.date())+" payrolls="+str(row.tolist()[0])) #печатаем год, слово "payrolls=" и значение показателя

6. Сохраняем этот файл под любым именем, но в конце должно быть обязательно .py (питон)
Пэйроллы за 100 лет
7. Жмём F5 или запускаем через меню:
Пэйроллы за 100 лет
8. После этого появляется новое окошко, в котором происходит исполнение кода. В случае успеха (а иначе и быть не должно), через несколько секунд ожидания в него польются цифры:
Пэйроллы за 100 лет
Это и есть пэйроллы с 1947 года.
---
Без регистрации на quandle.com данные можно качнуть только 50 раз в день. Регистрация бесплатная. Если вы зарегистрировались, то вам будет дан специальный ключ. Сервис заботливый, и вы сможете сразу получить готовую строку с напечатанным ключом.
Вот что имеется в виду.
Пэйроллы лежат здесь:
https://www.quandl.com/data/ACC/NFP-Non-Farm-Payrolls
Справа есть кнопка Python:
Пэйроллы за 100 лет
Нажимаем её:
Пэйроллы за 100 лет
Это уже готовая вторая строчка из кода. К ней можно приписать дополнительные параметры, как это сделал я. Во второй строке я добавил start_date=«1947-01-01»
В итоге вторая строчка будет такой:

data=quandl.get("ACC/NFP", authtoken="z1f_KOD_BLA_BLA", start_date="1947-01-01") 

Другие параметры запроса quandl.get (и многое другое про эту библиотеку) можно посмотреть здесь 
https://docs.quandl.com/docs/parameters-2
Удачи!

24 Комментария
  • Gsimplov777
    04 апреля 2019, 23:06
    Вы питон специально изучали где то? Если да то приносит ли он прибыль, т.е работаете применяете его еще где кроме примера приведенного в топике? 
      • Gsimplov777
        04 апреля 2019, 23:41
        Albus (Игорь Китаев), другие языки изучали?
          • sergeygaz
            05 апреля 2019, 09:25
            Albus (Игорь Китаев), я вас научу, как кружок нарисовать:

            import turtle
            turtle.Turtle().circle(100)
            turtle.getscreen()._root.mainloop()
      • ANTI_Finsov
        05 апреля 2019, 19:02
        Albus (Игорь Китаев), а кем работаете?
  • Тимофей Мартынов
    04 апреля 2019, 23:09
    А че, квандл бесплатный чтоль?
  • Максим Барбашин
    04 апреля 2019, 23:20
    У меня ребенок планирует изучать питон. Пока он занимается Unity для игр
    • Stasik
      05 апреля 2019, 11:34
      Максим Барбашин, в мобилы пусть топает, там надолго кодить хватит)
      • Максим Барбашин
        05 апреля 2019, 13:47
        Stasik, 
        Предложу.
        Ему хочется создать свою VR игру.
        Еще сейчас изучает для графики Blender, Cinema4D, terrain
        • Stasik
          06 апреля 2019, 10:00
          Максим Барбашин, надо что то выбирать, там глубина большая, если браться за несколько толку везде мало будет, пока выбирает пусть пробует понятно. Общие видео надеюсь смотрит, а то у многих впечатление, что создать игру это как поиграть. https://www.youtube.com/watch?v=kw-1bH0tMu8 Нудно и тяжело.
          • Максим Барбашин
            06 апреля 2019, 11:47
            Stasik, 
            Это да.
            Но ребёнку 8 лет, пусть попробует разное, посмотрит, что понравится.
            И потом знание графического дизайна полезно разработчику игр.
            Проблема, что вся информация на английском.
            И специалистов мало.
            По unity 3D нам в компьютерной школе пообехали сделать курс.
            А unity VR даже курса найти не удалось.
            Где учиться — непонятно.
            • Stasik
              07 апреля 2019, 10:11
              Максим Барбашин, Сегодня программирование и вообще IT без английского очень ограничено. Как говорится инглиш там must have. 
              Конечно пусть пробует без этого и не понятно нужно ли оно тебе.
  • Йоганн
    04 апреля 2019, 23:31
    Спасибо за труд, правда, я все делаю на Си++
    И до сих пор не понимаю, что такое пэй-роллы и с чем их едят.
  • ¯ \ _ (ツ) _ / ¯
    04 апреля 2019, 23:57
    Используйте Jupyter
    • tranquility
      05 апреля 2019, 16:25
      ¯ _ (ツ) _ / ¯, жупайтер мне представляется недостаточно гибким. С точки зрения изучения языка он, мне кажется, будет мешать начинающим даже. Если надо сохранять предыдущие вычисления, проще (и поучительнее) как по мне — записывать их в промежуточные файлы и потом считывать. Py-файлы хороши, например, еще тем, что их без лишних хлопот можно из командной строки запускать зайдя на суперкомп по ssh.
      • ¯ \ _ (ツ) _ / ¯
        05 апреля 2019, 16:52
        tranquility, все это можно делать и в Jupyter. Главное преимущество — это графическое отображение, возможность перезапускать часть кода,  построение графиков.
        Но каждому свое, конечно.
  • П М
    05 апреля 2019, 00:10
    почему просто в csv не экспортировать?
    питон хорош конечно, но у меня другая любовь :)
  • Mike Dewar
    05 апреля 2019, 02:26
    Огонь!

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн