同じJupyterノートブックでRおよびPythonコードを実行することは可能ですか?利用可能なすべての代替手段は何ですか?
上記の3つのオプションのうち、PythonおよびRコードスニペット(変数と視覚化の共有)を実行するのに信頼できるものはどれですか?
はい、可能です! rpy2を使用します。
pip install rpy2
でrpy2をインストールできます
次に、いずれかのセルで%load_ext rpy2.ipython
を実行します。 (これは一度だけ実行する必要があります。)
これで、次のことができるようになりました。
Pythonセル:
# enables the %%R magic, not necessary if you've already done this
%load_ext rpy2.ipython
import pandas as pd
df = pd.DataFrame({
'cups_of_coffee': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
'productivity': [2, 5, 6, 8, 9, 8, 0, 1, 0, -1]
})
Rセル:
%%R -i df -w 5 -h 5 --units in -r 200
# import df from global environment
# make default figure size 5 by 5 inches with 200 dpi resolution
install.packages("ggplot2", repos='http://cran.us.r-project.org', quiet=TRUE)
library(ggplot2)
ggplot(df, aes(x=cups_of_coffee, y=productivity)) + geom_line()
そして、あなたはpython Pandas DataFrame。
2018年4月更新、
RStudioはパッケージも公開しています: https://blog.rstudio.com/2018/03/26/reticulate-r-interface-to-python/
そのため、Rマークダウンノートブックを使用して異なる言語で複数のコードチャンクを実行できます。これは、jupyterノートブックに似ています。
以前の投稿で、オブジェクトの基本的な表現は異なると述べました。実際には、Rとpythonの基礎となるマトリックス表現のより微妙な議論があります: https://rstudio.github.io/reticulate/articles/arrays。 html
古い投稿:
同じノートブックでRとPythonの両方の構文を使用するのは難しいでしょう。これは、主に2つの言語のオブジェクトの基本表現が異なるためです。同じノートブックでオブジェクトと異なる言語の変換を許可するようにしてください: http://beakernotebook.com/features
私は自分では使っていませんが、有望に見えます
SoSカーネルは別のオプションです。
まだどれだけうまく機能しているかわからない、使い始めたばかり。
SoSカーネルを使用すると、同じノートブック内でPythonおよびR.
SoS Polyglot Notebook-必要な言語のインストール手順
PythonおよびRセル のノートブックの例を次に示します。
*更新:
変数の共有に関しては、マジック%use
および%with
。 「SoSは、すべてのサブカーネル間でsosで始まる名前の変数を自動的に共有します」 1 。
例.
Rの開始セル:
%use R
sos_var=read.csv('G:\\Somefile.csv')
dim(sos_var)
出力:
51 13
Pythonへの切り替え:
%with Python3
sos_var.shape
出力:
(51, 13)