Skip to content

Instantly share code, notes, and snippets.

@crazyhottommy
Last active August 29, 2015 14:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save crazyhottommy/71e0dcb6d678c137733c to your computer and use it in GitHub Desktop.
Save crazyhottommy/71e0dcb6d678c137733c to your computer and use it in GitHub Desktop.
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### I am going to demonstrate how to use ipython notebook bash_kernal to do reproducible research.\n",
"I can do command line in the notebook and take notes along the way.\n",
"Let's go to the directory first."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"total 256\r\n",
"drwxr-xr-x+ 82 Tammy staff 2788 May 4 22:06 ..\r\n",
"drwxr-xr-x 7 Tammy staff 238 May 4 21:42 .\r\n",
"-rw-r--r--@ 1 Tammy staff 6148 May 1 22:21 .DS_Store\r\n",
"-rw-r--r-- 1 Tammy staff 4608 May 1 22:00 iris.csv\r\n",
"drwxr-xr-x 3 Tammy staff 102 May 1 09:40 play\r\n",
"-rw-r-----@ 1 Tammy staff 114348 Mar 29 22:25 pybamview_example_data.tar.gz\r\n",
"drwxr-xr-x@ 7 Tammy staff 238 Jul 11 2014 examples\r\n"
]
}
],
"source": [
"cd playground\n",
"ls -alt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we are going to work with the famous iris.csv dataset which is from R.\n",
"First, look at the first serveral lines of the data."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"sepal_length,sepal_width,petal_length,petal_width,species\r\n",
"5.1,3.5,1.4,0.2,Iris-setosa\r\n",
"4.9,3.0,1.4,0.2,Iris-setosa\r\n",
"4.7,3.2,1.3,0.2,Iris-setosa\r\n",
"4.6,3.1,1.5,0.2,Iris-setosa\r\n"
]
}
],
"source": [
"head -5 iris.csv"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To have a better view of the data, use csvlook command from [csvkit](https://csvkit.readthedocs.org/en/0.9.1/). csvkit use comma as a default delimiter, if you have tab delimited file, use -t flag. There are many other useful commands,check the link above."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"|---------------+-------------+--------------+-------------+--------------|\r\n",
"| sepal_length | sepal_width | petal_length | petal_width | species |\r\n",
"|---------------+-------------+--------------+-------------+--------------|\r\n",
"| 5.1 | 3.5 | 1.4 | 0.2 | Iris-setosa |\r\n",
"| 4.9 | 3.0 | 1.4 | 0.2 | Iris-setosa |\r\n",
"| 4.7 | 3.2 | 1.3 | 0.2 | Iris-setosa |\r\n",
"| 4.6 | 3.1 | 1.5 | 0.2 | Iris-setosa |\r\n",
"| 5.0 | 3.6 | 1.4 | 0.2 | Iris-setosa |\r\n",
"| 5.4 | 3.9 | 1.7 | 0.4 | Iris-setosa |\r\n",
"| 4.6 | 3.4 | 1.4 | 0.3 | Iris-setosa |\r\n",
"| 5.0 | 3.4 | 1.5 | 0.2 | Iris-setosa |\r\n",
"| 4.4 | 2.9 | 1.4 | 0.2 | Iris-setosa |\r\n",
"|---------------+-------------+--------------+-------------+--------------|\r\n"
]
}
],
"source": [
"cat iris.csv | head | csvlook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is a comma seperated value file, we are going to look at some statistics by using [datamash](https://www.gnu.org/software/datamash/examples/)\n",
"It is a very interesting GNU project, and I like it very much. It is very powerful and enable me to do some\n",
"very useful stuff together with awk and sed. There are examples in the link working with gene annoation file.\n",
"\n",
"Let's look at the average sepal_length for each species. we can do it in R by dplyr easily, but I am going to \n",
"use command lines."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"GroupBy(species),mean(sepal_length)\r\n",
"Iris-setosa,5.006\r\n",
"Iris-versicolor,5.936\r\n",
"Iris-virginica,6.588\r\n"
]
}
],
"source": [
"cat iris.csv | datamash -t \",\" -H -s -g 5 mean 1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"-H flag means there is a header in the iris.csv file, -s flag means sort the file first, -g means group the data by specices and then calculate the mean of the first column."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Another very useful tool that I came across is [q](https://github.com/harelba/q), which can execute SQL commands on plain txt files. q assumes the file is space delimited. use `-d \",\"` for comma delimited and `-t` for tab delimited files, respectively."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"5.006,Iris-setosa\r\n",
"5.936,Iris-versicolor\r\n",
"6.588,Iris-virginica\r\n"
]
}
],
"source": [
"cat iris.csv | q -H -d \",\" \"SELECT AVG(sepal_length), species from - Group BY species\""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we got the same result as using datamash."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### ipython bash_kernal can also print the figure inline.\n",
"I am going to use [Rio](https://github.com/jeroenjanssens/data-science-at-the-command-line/blob/master/tools/Rio) to interact R on the command line and print out the figure using display command following the\n",
"link here: [IBash Notebook](http://jeroenjanssens.com/2015/02/19/ibash-notebook.html)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": []
},
{
"data": {
"image/png": "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"
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"cat iris.csv | Rio -ge \"g+geom_point(aes(x=sepal_length,y=sepal_width,colour=species))\"| display"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we get this figure inline, which I think is very awesome!\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"### There are many limitations so far for the IBash_kernal. \n",
"1. One thing I found is that if the command is not correctly executed. the error will persist and you can not proceed. I have to restart the kernal to continue to work on the same notebook.\n",
"2. It can not display real-time data, less command will not work.\n",
"others can be found in the [post here](http://jeroenjanssens.com/2015/02/19/ibash-notebook.html)\n",
"Nevertherless, IBash Notebook gives a way to document your linux commands in a real-time manner and make your research reproducible to some extent!"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Bash",
"language": "bash",
"name": "bash"
},
"language_info": {
"codemirror_mode": "shell",
"file_extension": ".sh",
"mimetype": "text/x-sh",
"name": "bash"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment