R
по сравнению с Python
имеет продвинутые возможности отображения финансовой графики.
Ниже, я привожу пошаговый алгоритм для построения графика в пакете quantmod
на основе данных, передаваемых из Python
Шаг 1: Загрузка данных в Python
import pandas as pd
micex = pd.read_csv('micex.csv', index_col='Date', parse_dates=True)
Шаг 2: Передача данных в R
Передача данных в R
происходит при помощи модуля pandas.rpy
import pandas.rpy.common as com
/home/sergey/anaconda3/lib/python3.4/site-packages/pandas/rpy/__init__.py:11: FutureWarning: The pandas.rpy module is deprecated and will be removed in a future version. We refer to external packages like rpy2. See here for a guide on how to port your code to rpy2: http://pandas.pydata.org/pandas-docs/stable/r_interface.html FutureWarning)
Несмотря на появившееся предупреждение, что pandas.rpy
модуль устарел и будет удален из будущих релизов pandas
, на сегодняшний момент он является единственным работающим способом передачи временных рядов с индексом типа datetime
.
Конвертируем Python DataFrame micex
в R data.frame mx
:
mx = com.convert_to_r_dataframe(micex)
Далее, поскольку мы работаем в ipython notebook
, мы загружаем ipython magic
:
%load_ext rpy2.ipython
Шаг 3: Построение графика в R
Наконец, последний шаг — непосредственное построение графика в R. Данная операция выполняется при помощи ipython magig
%%R
:
%%R
— двойной процент означает что в R выполняется ВСЯ ЯЧЕЙКА-i mx
— ключ, который объявляет имена переменных, передаваемых в R. Если переменных несколько, то они могут перечисляться через запятую.
Далее в исполняемой ячейке идет обычный код на R.
%%R -i mx
library(quantmod)
chartSeries(mx, theme='wsj')

Write a comment: