Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Julia/Test/Test of RCall.ipynb
{
"cells": [
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "versioninfo()",
"execution_count": 1,
"outputs": [
{
"output_type": "stream",
"text": "Julia Version 1.0.1\nCommit 0d713926f8 (2018-09-29 19:05 UTC)\nPlatform Info:\n OS: Windows (x86_64-w64-mingw32)\n CPU: Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz\n WORD_SIZE: 64\n LIBM: libopenlibm\n LLVM: libLLVM-6.0.0 (ORCJIT, haswell)\nEnvironment:\n JULIA_CMDSTAN_HOME = C:\\CmdStan\n JULIA_NUM_THREADS = 4\n JULIA_PKGDIR = C:\\JuliaPkg\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "# RCall.jlの使用例"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## A Brief Example\n\nhttp://luiarthur.github.io/usingrcall"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "#= To Install RCall:\n using Pkg\n Pkg.add(\"RCall\")\n=#\nusing RCall",
"execution_count": 2,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "X = randn(3,2)\nb = reshape([2.0, 3.0], 2,1)\ny = X * b + randn(3,1)",
"execution_count": 3,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 3,
"data": {
"text/plain": "3×1 Array{Float64,2}:\n -4.201556132429842 \n 0.4872545860474999\n -1.0317679215996876"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Note that X and y are julia variables. @rput sends y and X to R with the same names\n@rput y\n@rput X",
"execution_count": 4,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 4,
"data": {
"text/plain": "3×2 Array{Float64,2}:\n -2.01802 0.478014\n -0.630687 0.394634\n -0.597286 0.372121"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Fit a model in R\nR\"mod <- lm(y ~ X-1)\"\nR\"summary(mod)\"",
"execution_count": 5,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 5,
"data": {
"text/plain": "RObject{VecSxp}\n\nCall:\nlm(formula = y ~ X - 1)\n\nResiduals:\n 1 2 3 \n 0.001616 0.739294 -0.786096 \n\nCoefficients:\n Estimate Std. Error t value Pr(>|t|)\nX1 3.108 1.148 2.707 0.225\nX2 4.329 3.490 1.240 0.432\n\nResidual standard error: 1.079 on 1 degrees of freedom\nMultiple R-squared: 0.9386,\tAdjusted R-squared: 0.8157 \nF-statistic: 7.639 on 2 and 1 DF, p-value: 0.2479\n\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# If you want to retrieve a variable from R, look at this example\nR\"z <- y * 3\"\n@rget z\nz",
"execution_count": 6,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 6,
"data": {
"text/plain": "3×1 Array{Float64,2}:\n -12.604668397289526 \n 1.4617637581424996\n -3.0953037647990627"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# In this example, we really need to use reval\nR_lm(some_str_expr) = reval(rparse(\"lm(\" * some_str_expr * \")\"))\nR_summary = R\"summary\"\nR_mod = R_lm(\"y ~ X-1\")\nR_summary(R_mod)",
"execution_count": 7,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 7,
"data": {
"text/plain": "RObject{VecSxp}\n\nCall:\nlm(formula = y ~ X - 1)\n\nResiduals:\n 1 2 3 \n 0.001616 0.739294 -0.786096 \n\nCoefficients:\n Estimate Std. Error t value Pr(>|t|)\nX1 3.108 1.148 2.707 0.225\nX2 4.329 3.490 1.240 0.432\n\nResidual standard error: 1.079 on 1 degrees of freedom\nMultiple R-squared: 0.9386,\tAdjusted R-squared: 0.8157 \nF-statistic: 7.639 on 2 and 1 DF, p-value: 0.2479\n\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Finally, plotting. Note that if you don't set ylab and xlab, you'll get a very messy plot...\nR_plot = R\"plot\"\nR_plot(x=rand(100),y=rand(100),pch=20,cex=2,fg=\"grey\",bty=\"n\",ylab=\"\",xlab=\"\")\nR\"plot(X[,1],y)\"\n# Now, you can call R_plot in julia quite like you call plot in R",
"execution_count": 8,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 8,
"data": {
"text/plain": "RObject{NilSxp}\nNULL\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Rによるプロット"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"plot(rnorm(2000))\"",
"execution_count": 9,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 9,
"data": {
"text/plain": "RObject{NilSxp}\nNULL\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R_plot = R\"plot\";\nR_plot(x=randn(2000),ylab=\"\")",
"execution_count": 10,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 10,
"data": {
"text/plain": "RObject{NilSxp}\nNULL\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"\"\"\nlibrary(ggplot2)\nstr(iris)\n\"\"\"",
"execution_count": 11,
"outputs": [
{
"output_type": "stream",
"text": "'data.frame':\t150 obs. of 5 variables:\n $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...\n $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...\n $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...\n $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...\n $ Species : Factor w/ 3 levels \"setosa\",\"versicolor\",..: 1 1 1 1 1 1 1 1 1 1 ...\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 11,
"data": {
"text/plain": "RObject{NilSxp}\nNULL\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# http://motw.mods.jp/R/ggplot_facet.html\n\nR\"\"\"\np <- ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width))\np + geom_point(colour=\"gray50\", size=3) + geom_point(aes(colour=Species))\n\"\"\"",
"execution_count": 12,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 12,
"data": {
"text/plain": "RObject{VecSxp}\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# http://motw.mods.jp/R/ggplot_geom_histogram.html\n\nR\"\"\"\np <- ggplot(iris, aes(x=Sepal.Length))\np + geom_histogram(aes(colour=Species),bins=30)\n\"\"\"",
"execution_count": 13,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 13,
"data": {
"text/plain": "RObject{VecSxp}\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"\"\"\np + geom_histogram(aes(fill=Species),bins=30)\n\"\"\"",
"execution_count": 14,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 14,
"data": {
"text/plain": "RObject{VecSxp}\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"\"\"\nstr(diamonds)\n\"\"\"",
"execution_count": 15,
"outputs": [
{
"output_type": "stream",
"text": "Classes 'tbl_df', 'tbl' and 'data.frame':\t53940 obs. of 10 variables:\n $ carat : num 0.23 0.21 0.23 0.29 0.31 0.24 0.24 0.26 0.22 0.23 ...\n $ cut : Ord.factor w/ 5 levels \"Fair\"<\"Good\"<..: 5 4 2 4 2 3 3 3 1 3 ...\n $ color : Ord.factor w/ 7 levels \"D\"<\"E\"<\"F\"<\"G\"<..: 2 2 2 6 7 7 6 5 2 5 ...\n $ clarity: Ord.factor w/ 8 levels \"I1\"<\"SI2\"<\"SI1\"<..: 2 3 5 4 2 6 7 3 4 5 ...\n $ depth : num 61.5 59.8 56.9 62.4 63.3 62.8 62.3 61.9 65.1 59.4 ...\n $ table : num 55 61 65 58 58 57 57 55 61 61 ...\n $ price : int 326 326 327 334 335 336 336 337 337 338 ...\n $ x : num 3.95 3.89 4.05 4.2 4.34 3.94 3.95 4.07 3.87 4 ...\n $ y : num 3.98 3.84 4.07 4.23 4.35 3.96 3.98 4.11 3.78 4.05 ...\n $ z : num 2.43 2.31 2.31 2.63 2.75 2.48 2.47 2.53 2.49 2.39 ...\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 15,
"data": {
"text/plain": "RObject{NilSxp}\nNULL\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# http://motw.mods.jp/R/ggplot_facet.html\n\nR\"\"\"\np <- ggplot(diamonds, aes(x=carat, y=price))\np + geom_point(aes(colour=clarity)) + facet_grid(cut ~ color, margins=TRUE)\n\"\"\"",
"execution_count": 16,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 16,
"data": {
"text/plain": "RObject{VecSxp}\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# https://mrunadon.github.io/ggplot2/\n\nR\"\"\"\ng3<-ggplot(iris,aes(x=Sepal.Length)) #確率密度曲線を描いていきたいので、y軸の宣言は不要です。確率密度がy軸になるので。\ng3<-g3+geom_density(aes(fill=Species),size=0.5,alpha=0.5) #geom_density()を使います\ng3<-g3+xlim(3,10) #x軸は3から10の範囲としましょう。\ng3\n\"\"\"",
"execution_count": 17,
"outputs": [
{
"output_type": "error",
"ename": "LoadError",
"evalue": "RParseError: unicode script is not supported",
"traceback": [
"RParseError: unicode script is not supported",
"",
"Stacktrace:",
" [1] render(::String) at C:\\Users\\genkuroki\\.julia\\packages\\RCall\\Q4n8R\\src\\render.jl:14",
" [2] @R_str(::LineNumberNode, ::Module, ::Any) at C:\\Users\\genkuroki\\.julia\\packages\\RCall\\Q4n8R\\src\\macros.jl:62"
]
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# https://mrunadon.github.io/ggplot2/\n\nR\"\"\"\ng3<-ggplot(iris,aes(x=Sepal.Length))\ng3<-g3+geom_density(aes(fill=Species),size=0.5,alpha=0.5)\ng3<-g3+xlim(3,10)\ng3\n\"\"\"",
"execution_count": 18,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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"
},
"metadata": {}
},
{
"output_type": "execute_result",
"execution_count": 18,
"data": {
"text/plain": "RObject{VecSxp}\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## JuliaとRのあいだでのデータのやり取り"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"hoge <- 3\"",
"execution_count": 19,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 19,
"data": {
"text/plain": "RObject{RealSxp}\n[1] 3\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@rget hoge",
"execution_count": 20,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 20,
"data": {
"text/plain": "3.0"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "moge = Float64(pi)",
"execution_count": 21,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 21,
"data": {
"text/plain": "3.141592653589793"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@rput moge",
"execution_count": 22,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 22,
"data": {
"text/plain": "3.141592653589793"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"moge\"",
"execution_count": 23,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 23,
"data": {
"text/plain": "RObject{RealSxp}\n[1] 3.141593\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "poge = [\n 1 2 3;\n 4 5 6;\n 7 8 9;\n]",
"execution_count": 24,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 24,
"data": {
"text/plain": "3×3 Array{Int64,2}:\n 1 2 3\n 4 5 6\n 7 8 9"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@rput poge",
"execution_count": 25,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 25,
"data": {
"text/plain": "3×3 Array{Int64,2}:\n 1 2 3\n 4 5 6\n 7 8 9"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"poge\"",
"execution_count": 26,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 26,
"data": {
"text/plain": "RObject{IntSxp}\n [,1] [,2] [,3]\n[1,] 1 2 3\n[2,] 4 5 6\n[3,] 7 8 9\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "pogecopy = deepcopy(poge)",
"execution_count": 27,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 27,
"data": {
"text/plain": "3×3 Array{Int64,2}:\n 1 2 3\n 4 5 6\n 7 8 9"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "R\"poge <- 2*poge\"",
"execution_count": 28,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 28,
"data": {
"text/plain": "RObject{RealSxp}\n [,1] [,2] [,3]\n[1,] 2 4 6\n[2,] 8 10 12\n[3,] 14 16 18\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "@rget poge",
"execution_count": 29,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 29,
"data": {
"text/plain": "3×3 Array{Float64,2}:\n 2.0 4.0 6.0\n 8.0 10.0 12.0\n 14.0 16.0 18.0"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "poge",
"execution_count": 30,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 30,
"data": {
"text/plain": "3×3 Array{Float64,2}:\n 2.0 4.0 6.0\n 8.0 10.0 12.0\n 14.0 16.0 18.0"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "pogecopy",
"execution_count": 31,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 31,
"data": {
"text/plain": "3×3 Array{Int64,2}:\n 1 2 3\n 4 5 6\n 7 8 9"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "",
"execution_count": null,
"outputs": []
}
],
"metadata": {
"_draft": {
"nbviewer_url": "https://gist.github.com/c72aa29f24156e46c7564852e4f36c9a"
},
"gist": {
"id": "c72aa29f24156e46c7564852e4f36c9a",
"data": {
"description": "Julia/Test/Test of RCall.ipynb",
"public": true
}
},
"kernelspec": {
"name": "julia-1.0",
"display_name": "Julia 1.0.1",
"language": "julia"
},
"language_info": {
"file_extension": ".jl",
"name": "julia",
"mimetype": "application/julia",
"version": "1.0.1"
},
"toc": {
"nav_menu": {
"height": "68px",
"width": "252px"
},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": "block",
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment