Skip to content

Instantly share code, notes, and snippets.

@ThomasCabrol
Last active January 17, 2016 13:21
Show Gist options
  • Save ThomasCabrol/5684119 to your computer and use it in GitHub Desktop.
Save ThomasCabrol/5684119 to your computer and use it in GitHub Desktop.
Playing with the rmagic extension in the iPython Notebook
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "RMagic"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 3,
"metadata": {},
"source": [
"Investigating R and Python integration in the Notebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Getting some data:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"!dctc cp http://aima.cs.berkeley.edu/data/iris.csv ."
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"v0.2(d9bc6bb)\r\n"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"done: 0/0 in 0s - 1/1 files done - 0Bps - 0 transfer(s) running. \r\n",
"Copied 0 in 0s\r\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Putting it into a pandas data frame"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import pandas as pd"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"columns = ['Sepal.Length', 'Sepal.Width', 'Petal.Length', 'Petal.Width', 'Species']\n",
"iris = pd.read_csv(\"iris.csv\", names=columns)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"iris.head()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Sepal.Length</th>\n",
" <th>Sepal.Width</th>\n",
" <th>Petal.Length</th>\n",
" <th>Petal.Width</th>\n",
" <th>Species</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 5.1</td>\n",
" <td> 3.5</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> setosa</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td> 4.9</td>\n",
" <td> 3.0</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> setosa</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td> 4.7</td>\n",
" <td> 3.2</td>\n",
" <td> 1.3</td>\n",
" <td> 0.2</td>\n",
" <td> setosa</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td> 4.6</td>\n",
" <td> 3.1</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> setosa</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td> 5.0</td>\n",
" <td> 3.6</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> setosa</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"output_type": "pyout",
"prompt_number": 4,
"text": [
" Sepal.Length Sepal.Width Petal.Length Petal.Width Species\n",
"0 5.1 3.5 1.4 0.2 setosa\n",
"1 4.9 3.0 1.4 0.2 setosa\n",
"2 4.7 3.2 1.3 0.2 setosa\n",
"3 4.6 3.1 1.5 0.2 setosa\n",
"4 5.0 3.6 1.4 0.2 setosa"
]
}
],
"prompt_number": 4
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pushing it to R using rmagic"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%load_ext rmagic"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%R -d iris\n",
"%Rpush columns"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 6
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Creating a proper R data frame"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%R\n",
"iris.df <- as.data.frame(iris)\n",
"colnames(iris.df) <- columns"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%R print(summary(iris.df))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"text": [
" Sepal.Length Sepal.Width Petal.Length Petal.Width \n",
" Min. :4.300 Min. :2.000 Min. :1.000 Min. :0.100 \n",
" 1st Qu.:5.100 1st Qu.:2.800 1st Qu.:1.600 1st Qu.:0.300 \n",
" Median :5.800 Median :3.000 Median :4.350 Median :1.300 \n",
" Mean :5.843 Mean :3.057 Mean :3.758 Mean :1.199 \n",
" 3rd Qu.:6.400 3rd Qu.:3.300 3rd Qu.:5.100 3rd Qu.:1.800 \n",
" Max. :7.900 Max. :4.400 Max. :6.900 Max. :2.500 \n",
" Species \n",
" setosa :50 \n",
" versicolor:50 \n",
" virginica :50 \n",
" \n",
" \n",
" \n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Make some plots"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%R\n",
"library(\"ggplot2\")\n",
"print(qplot(Sepal.Length, Petal.Length, data = iris.df, color = Species))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"text": [
"Find out what's changed in ggplot2 with\n",
"news(Version == \"0.9.2.1\", package = \"ggplot2\")\n"
]
},
{
"output_type": "display_data",
"png": "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\n"
}
],
"prompt_number": 10
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Getting back the data from R"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%R\n",
"setosa <- subset(iris.df, Species==\"setosa\")"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%Rpull setosa"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# For some reasons, setosa comes back transposed..\n",
"setosas = pd.DataFrame(setosa.T, columns=columns)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"setosas"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Sepal.Length</th>\n",
" <th>Sepal.Width</th>\n",
" <th>Petal.Length</th>\n",
" <th>Petal.Width</th>\n",
" <th>Species</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0 </th>\n",
" <td> 5.1</td>\n",
" <td> 3.5</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1 </th>\n",
" <td> 4.9</td>\n",
" <td> 3.0</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2 </th>\n",
" <td> 4.7</td>\n",
" <td> 3.2</td>\n",
" <td> 1.3</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3 </th>\n",
" <td> 4.6</td>\n",
" <td> 3.1</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4 </th>\n",
" <td> 5.0</td>\n",
" <td> 3.6</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5 </th>\n",
" <td> 5.4</td>\n",
" <td> 3.9</td>\n",
" <td> 1.7</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6 </th>\n",
" <td> 4.6</td>\n",
" <td> 3.4</td>\n",
" <td> 1.4</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7 </th>\n",
" <td> 5.0</td>\n",
" <td> 3.4</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8 </th>\n",
" <td> 4.4</td>\n",
" <td> 2.9</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9 </th>\n",
" <td> 4.9</td>\n",
" <td> 3.1</td>\n",
" <td> 1.5</td>\n",
" <td> 0.1</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td> 5.4</td>\n",
" <td> 3.7</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td> 4.8</td>\n",
" <td> 3.4</td>\n",
" <td> 1.6</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td> 4.8</td>\n",
" <td> 3.0</td>\n",
" <td> 1.4</td>\n",
" <td> 0.1</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td> 4.3</td>\n",
" <td> 3.0</td>\n",
" <td> 1.1</td>\n",
" <td> 0.1</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td> 5.8</td>\n",
" <td> 4.0</td>\n",
" <td> 1.2</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td> 5.7</td>\n",
" <td> 4.4</td>\n",
" <td> 1.5</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td> 5.4</td>\n",
" <td> 3.9</td>\n",
" <td> 1.3</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td> 5.1</td>\n",
" <td> 3.5</td>\n",
" <td> 1.4</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td> 5.7</td>\n",
" <td> 3.8</td>\n",
" <td> 1.7</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td> 5.1</td>\n",
" <td> 3.8</td>\n",
" <td> 1.5</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td> 5.4</td>\n",
" <td> 3.4</td>\n",
" <td> 1.7</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td> 5.1</td>\n",
" <td> 3.7</td>\n",
" <td> 1.5</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td> 4.6</td>\n",
" <td> 3.6</td>\n",
" <td> 1.0</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td> 5.1</td>\n",
" <td> 3.3</td>\n",
" <td> 1.7</td>\n",
" <td> 0.5</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td> 4.8</td>\n",
" <td> 3.4</td>\n",
" <td> 1.9</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td> 5.0</td>\n",
" <td> 3.0</td>\n",
" <td> 1.6</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td> 5.0</td>\n",
" <td> 3.4</td>\n",
" <td> 1.6</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td> 5.2</td>\n",
" <td> 3.5</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td> 5.2</td>\n",
" <td> 3.4</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td> 4.7</td>\n",
" <td> 3.2</td>\n",
" <td> 1.6</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td> 4.8</td>\n",
" <td> 3.1</td>\n",
" <td> 1.6</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td> 5.4</td>\n",
" <td> 3.4</td>\n",
" <td> 1.5</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td> 5.2</td>\n",
" <td> 4.1</td>\n",
" <td> 1.5</td>\n",
" <td> 0.1</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td> 5.5</td>\n",
" <td> 4.2</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td> 4.9</td>\n",
" <td> 3.1</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td> 5.0</td>\n",
" <td> 3.2</td>\n",
" <td> 1.2</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td> 5.5</td>\n",
" <td> 3.5</td>\n",
" <td> 1.3</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td> 4.9</td>\n",
" <td> 3.6</td>\n",
" <td> 1.4</td>\n",
" <td> 0.1</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td> 4.4</td>\n",
" <td> 3.0</td>\n",
" <td> 1.3</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td> 5.1</td>\n",
" <td> 3.4</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td> 5.0</td>\n",
" <td> 3.5</td>\n",
" <td> 1.3</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td> 4.5</td>\n",
" <td> 2.3</td>\n",
" <td> 1.3</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td> 4.4</td>\n",
" <td> 3.2</td>\n",
" <td> 1.3</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td> 5.0</td>\n",
" <td> 3.5</td>\n",
" <td> 1.6</td>\n",
" <td> 0.6</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td> 5.1</td>\n",
" <td> 3.8</td>\n",
" <td> 1.9</td>\n",
" <td> 0.4</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td> 4.8</td>\n",
" <td> 3.0</td>\n",
" <td> 1.4</td>\n",
" <td> 0.3</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td> 5.1</td>\n",
" <td> 3.8</td>\n",
" <td> 1.6</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td> 4.6</td>\n",
" <td> 3.2</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td> 5.3</td>\n",
" <td> 3.7</td>\n",
" <td> 1.5</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td> 5.0</td>\n",
" <td> 3.3</td>\n",
" <td> 1.4</td>\n",
" <td> 0.2</td>\n",
" <td> 1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"output_type": "pyout",
"prompt_number": 14,
"text": [
" Sepal.Length Sepal.Width Petal.Length Petal.Width Species\n",
"0 5.1 3.5 1.4 0.2 1\n",
"1 4.9 3.0 1.4 0.2 1\n",
"2 4.7 3.2 1.3 0.2 1\n",
"3 4.6 3.1 1.5 0.2 1\n",
"4 5.0 3.6 1.4 0.2 1\n",
"5 5.4 3.9 1.7 0.4 1\n",
"6 4.6 3.4 1.4 0.3 1\n",
"7 5.0 3.4 1.5 0.2 1\n",
"8 4.4 2.9 1.4 0.2 1\n",
"9 4.9 3.1 1.5 0.1 1\n",
"10 5.4 3.7 1.5 0.2 1\n",
"11 4.8 3.4 1.6 0.2 1\n",
"12 4.8 3.0 1.4 0.1 1\n",
"13 4.3 3.0 1.1 0.1 1\n",
"14 5.8 4.0 1.2 0.2 1\n",
"15 5.7 4.4 1.5 0.4 1\n",
"16 5.4 3.9 1.3 0.4 1\n",
"17 5.1 3.5 1.4 0.3 1\n",
"18 5.7 3.8 1.7 0.3 1\n",
"19 5.1 3.8 1.5 0.3 1\n",
"20 5.4 3.4 1.7 0.2 1\n",
"21 5.1 3.7 1.5 0.4 1\n",
"22 4.6 3.6 1.0 0.2 1\n",
"23 5.1 3.3 1.7 0.5 1\n",
"24 4.8 3.4 1.9 0.2 1\n",
"25 5.0 3.0 1.6 0.2 1\n",
"26 5.0 3.4 1.6 0.4 1\n",
"27 5.2 3.5 1.5 0.2 1\n",
"28 5.2 3.4 1.4 0.2 1\n",
"29 4.7 3.2 1.6 0.2 1\n",
"30 4.8 3.1 1.6 0.2 1\n",
"31 5.4 3.4 1.5 0.4 1\n",
"32 5.2 4.1 1.5 0.1 1\n",
"33 5.5 4.2 1.4 0.2 1\n",
"34 4.9 3.1 1.5 0.2 1\n",
"35 5.0 3.2 1.2 0.2 1\n",
"36 5.5 3.5 1.3 0.2 1\n",
"37 4.9 3.6 1.4 0.1 1\n",
"38 4.4 3.0 1.3 0.2 1\n",
"39 5.1 3.4 1.5 0.2 1\n",
"40 5.0 3.5 1.3 0.3 1\n",
"41 4.5 2.3 1.3 0.3 1\n",
"42 4.4 3.2 1.3 0.2 1\n",
"43 5.0 3.5 1.6 0.6 1\n",
"44 5.1 3.8 1.9 0.4 1\n",
"45 4.8 3.0 1.4 0.3 1\n",
"46 5.1 3.8 1.6 0.2 1\n",
"47 4.6 3.2 1.4 0.2 1\n",
"48 5.3 3.7 1.5 0.2 1\n",
"49 5.0 3.3 1.4 0.2 1"
]
}
],
"prompt_number": 14
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment