Последние авторы
1 (% style="text-align:center" %)
2 [[image:CorpwikiR.png||height="450" width="800"]]
3
4 == Что такое язык программирования R ==
5
6 **R - язык программирования, созданный специально для статистического анализа данных**. Его разработали на факультете статистики Оклендского университета.
7
8 **Особенности языка R**:
9
10 * **Интерпретируемый**. Программа на языке R сразу готова к исполнению — её не нужно собирать в исполняемый файл с помощью компилятора.
11 * **Простой по синтаксису**. R в своей основе не содержит сложных конструкций и запутанных функций. Даже типов данных у него всего четыре: символьные, числовые, логические и комплексные.
12 * **Рабочая среда**. В R встроены готовые методы статистического анализа и инструменты для визуализации.
13
14 **Сфера применения языка R**: математики, биологи, генетики и другие учёные, которым нужно проводить статистические исследования и строить модели. Также R востребован среди аналитиков данных и специалистов по Data Science.
15
16 **Распространение**: язык и среда доступны под лицензией GNU GPL. Распространяются в виде исходных кодов, а также откомпилированных приложений под ряд операционных систем.
17
18 == Какая польза от использования языка R в бизнесе ==
19
20 С точки зрения бизнеса разработку приложений для анализа данных на языке R можно считать почти идеальным решением:
21
22 1. Отсутствуют какие-либо финансовые барьеры для начала использования:
23 1*. Не надо никаких первоначальный вложений в лицензии.
24 1*. Нет никаких лицензионных ограничений и проблем потенциального расширения.
25 1*. Нет никаких ежегодных платежей за поддержку лицензий.
26 1*. Все прекрасно работает на linux, нет необходимости в приобретении дополнительных ОС.
27 1. Если ваши внешние системы выдают необходимую информацию, то этого уже достаточно для начала проекта. **Сопутствующие проекты по доработке не требуются**, все можно будет сделать на уровне аналитики.
28 1. Уже есть доказанная практика применения R в бизнесе практически во всех вертикалях.
29 1. Не надо планировать глобальный проект, достаточно начать с частных проблемных мест.
30 1*. Проекты получаются компактными и быстрыми, результаты легко переводятся в деньги (заработанные или сэкономленные).
31 1*. Полученные результаты позволяют взглянуть на существующие задачи под иным углом зрения, обнаружить реальные проблемы и расставить акценты в более правильном виде.
32
33 (% class="box successmessage" %)
34 (((
35 {{icon name="info-circle" size="2x"}}{{/icon}} **Если ваши корпоративные приложения умеют "отдавать" данные в любом виде, этого уже достаточно для их обработки в R**
36 Доработка ваших систем не потребуется!
37
38 Вся обработка данных может быть выполнена на стороне приложения R.
39
40 Ввиду того что, данный язык изначально создан для работы с данными, приложения на нем получаются быстро, они компактные и понятные.
41 )))
42
43 == Что умеют приложения на R ==
44
45 * Импорт данных из различных источников.** txt\csv**, **xls **(Excel), web scrapping, RDBMS.
46 * Обработка данных: фильтрация, группировка, агрегирование, добавление и вычисление.
47 * Временной анализ (как правило, 80% данных сопровождаются временными метками).
48 * Расширенная обработка (элементы высшей математики, включая элементы машинного обучения): Наиболее популярен поиск аномалий, различные классификаторы, рекомендации и прогнозирование и Process mining.
49 * Визуализация данных различными способами.
50 * Интеграция с внешними информационными системами для экспорта рассчитанных данных.
51 * Экспорт в форматы, удобные для восприятия человеком, такие как: **pdf**, **html**, **xls**, **doc**, **ppt**.
52 * Web-base рабочее место для аналитика\рядового пользователя.
53
54 Приведенный функционал доступен в рамках экосистемы R без особой необходимости инсталляции каких-либо дополнительных сторонних компонент.
55
56 (% class="box infomessage" %)
57 (((
58 {{icon name="info-circle" size="2x"}}{{/icon}} **Фактически, ваша база знаний может использоваться как BI система**
59 Но в отличии от дорогих и сложных в внедрении систем подобного класса, вы сможете получить результаты быстро.
60 Рецепт успеха прост:
61
62 * Создать страницу в вашей базе знаний.
63 * Разместить на ней код вызова приложения R.
64 * Создать приложение R например в RStudio.
65 * Разместить его в сервисе генерации.
66 )))
67
68 == Как работает интеграция между Corpwiki (XWiki) и приложениями на языке R ==
69
70 Мы в Corpwiki разработали подход позволяющий использовать всю мощь приложений написанных на языке R в XWiki.
71
72 Это позволяет не только обогатить содержание баз знаний (корпоративных вики) визуально привлекательной инфографикой но и реализовать много интересных с точки зрения бизнеса решений.
73
74 Схематично процесс взаимодействия выглядит следующим образом:
75
76 [[image:Внешние данные.png||height="848" width="1200"]]
77
78 На страницу XWiki встраивается небольшой кусочек кода.
79
80 При обращении пользователя к такой странице, она запрашивает данные у сервиса обработки.
81
82 Данный сервис устанавливается "рядом" с XWiki и если например, ваша база знаний расположена на ваших серверах, то вы сможете также разместить данный сервис у  себя.
83
84 Безопасность корпоративных данных гарантирована.
85
86 Сервис обращается уже к XWiki откуда "забирает" данные для формирования отчетов или графики.
87
88 Такие данные могут забираться "в сыром" виде.
89
90 Вся обработка данных (фильтрация, группировка, вычисления, обогащение) происходят на стороне сервиса.
91
92 После того как данные готовы для отображения, система возвращает их в XWiki и пользователь видит готовый результат.
93
94 Для пользователя все выглядит так как будто он просто открыл страницу.
95
96 (% class="box successmessage" %)
97 (((
98 {{icon name="info-circle" size="2x"}}{{/icon}} **Созданная инфографика является интерактивной**
99
100 Другими словами есть возможность добавлять элементы управления на такие страницы и пользователи в режиме реального времени могут изменять настройки отображения.
101
102 Кроме того есть возможность дополнительной обработки введенных данных.
103
104 Таким образом можно не только показывать данные "как есть" но и реализовать модели вида "как будет".
105
106 Например отобразить график зависимости чистой прибыли от численности персонала основываясь на средней выработке и медианном значении заработной платы сотрудников.
107 )))
108
109 === Внешние данные ===
110
111 Как можно увидеть на схеме, данные могут быть получены не только из объектов данных XWiki но и из любых внешних источников данных.
112
113 Это могут быть корпоративные приложения, базы данных, файлы Excel и тому подобное.
114
115 Данные из разных систем можно объединять и использовать для формирования отчетности и инфографики.
116
117 Таким образом вы сможете превратить вашу базу знаний в витрину данных или BI систему.
118
119 Посмотрите в разделе примеров какие возможности дает для отображения данных данный подход.
120
121 == Примеры результатов работы приложений на языке R ==
122
123 Ниже мы разместили галерею скриншотов приложений и графиков созданных с применением языка R.
124
125 Любое из представленных решений, и любой график могут быть реализованы в вашей вики системе Corpwiki (XWiki).
126
127 === Живой пример ===
128
129 (% class="box successmessage" %)
130 (((
131 {{icon name="info-circle" size="2x"}}{{/icon}} Попробуйте воспользоваться настройками в правой части диаграммы.
132 Обратите внимание на то как меняется диаграмма при изменении настроек.
133 Попробуйте фильтр "по годам" или то как можно скрыть\отобразить панель настроек (треугольник выше заголовка "Настройки")
134 )))
135
136 {{html}}
137 <iframe src="https://shiny.corpwiki.ru/apps/7d68a672-bac2-4ca7-8be7-169760ce103b/" style="border:0px #ffffff none;" name="testXWR" scrolling="no" frameborder="1" marginheight="10px" marginwidth="0px" width="100%" height="700px" allowfullscreen></iframe>
138 {{/html}}
139
140 === Скриншоты возможных решений ===
141
142 {{gallery height="600px" width="100%"}}
143 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR1.png
144 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR2.png
145 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR3.png
146 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR4.png
147 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR5.png
148 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR6.png
149 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR7.png
150 image:Stati.Integratsii.Integratsiia-Corpwiki-XWiki-i-prilozhenii-na-iazyke-R.WebHome@XWikiR8.png
151 {{/gallery}}
152
153 ----
154
155 {{cl-plate-help/}}