Есть ли способ добавить Julia, R и python в один текстовый файл, такой как R markdown или блокнот, который можно использовать в качестве текстового файла?
Кратко сказано: я хотел бы иметь текстовый файл, в котором я мог бы плавно переключаться между R, python и Julia. Важно, что я ищу способ запуска, а не просто отображения кода
Я знаю, что можно добавить python (и многие другие языки) в R markdown http://goo.gl/4w8XIb , но не уверен, что смогу добавить Джулию. Также можно использовать ноутбуки, такие как Beaker http://beakernotebook.com/ со всеми тремя языками (и более), но моя проблема с записными книжками заключается в том, что они не так быстры в обращении по сравнению с тем, что можно сделать с текстовым файлом в среде редактора (sublime, emacs, vim, atom ...). Я очень мало знаю о блокнотах, и те, о которых я знаю, представлены в виде файлов json, но манипулирование файлом json для написания отчета-это все, кроме удобства пользователя.
Я, вероятно, упускаю очевидное, но есть ли другой способ сделать это? Спасибо
3 ответов:
Недавно я создал пакет R
JuliaCall, и он может быть использован в качестве движка julia в документе R Markdown, см. https://non-contradiction.github.io/JuliaCall/articles/JuliaCall_in_RMarkdown.html для примера.Хотя
JuliaCallуже находится на CRAN, эта новая функция все еще находится в версии разработки на github. Если вы хотите попробовать, используйтеdevtools::install_github("Non-Contradiction/JuliaCall")Установить
JuliaCall.Функция включает в себя
- несколько кусков Джулии, запущенных одной и той же Джулией сессия.
- доступ к переменным R, функциям внутри кода Джулии и наоборот.
Текущее ограничение заключается в том, что он полностью поддерживает только вывод html.
С реструктурированным текстом существует хорошая поддержка , включая примеры кода , где каждый
code-blockдиректива может включать в себя соответствующие язык... code-block:: ruby Some Ruby code.Markdown также поддерживает упоминание языка в каждом блоке кода , например:
```javascript var s = "JavaScript syntax highlighting"; alert(s); ``` ```python s = "Python syntax highlighting" print s ``` ``` No language indicated, so no syntax highlighting. But let's throw in a <b>tag</b>. ```
Я думаю, что Beaker Notebook на самом деле очень хорошее решение для ваших нужд. Это полиглот-инструмент, который позволит вам очень хорошо сочетать R, Python и Julia. Существует режим редактирования Vim, который не идеален, но все же довольно быстр. Существуют сочетания клавиш для быстрого выполнения ячеек, выполнения только выделенных строк, а также перехода между ячейками. Beaker также является разрешительно лицензированным проектом с открытым исходным кодом на GitHub с очень отзывчивым сопровождающим, поэтому вы также можете внести свой вклад в любой отсутствующие функции непосредственно как ПРС.
Comments