{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Basics of R (Review)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Assignment" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "a <- 2\n", "b <- 3" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "5" ], "text/latex": [ "5" ], "text/markdown": [ "5" ], "text/plain": [ "[1] 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "a + b" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Custom function" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "add <- function(a, b) {\n", " a + b\n", "}" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "5" ], "text/latex": [ "5" ], "text/markdown": [ "5" ], "text/plain": [ "[1] 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "add(a, b)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Vectors" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 1
  2. \n", "\t
  3. 2
  4. \n", "\t
  5. 3
  6. \n", "\t
  7. 4
  8. \n", "\t
  9. 5
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 1\n", "\\item 2\n", "\\item 3\n", "\\item 4\n", "\\item 5\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 1\n", "2. 2\n", "3. 3\n", "4. 4\n", "5. 5\n", "\n", "\n" ], "text/plain": [ "[1] 1 2 3 4 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "seq(1, 5)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 1
  2. \n", "\t
  3. 2
  4. \n", "\t
  5. 3
  6. \n", "\t
  7. 4
  8. \n", "\t
  9. 5
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 1\n", "\\item 2\n", "\\item 3\n", "\\item 4\n", "\\item 5\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 1\n", "2. 2\n", "3. 3\n", "4. 4\n", "5. 5\n", "\n", "\n" ], "text/plain": [ "[1] 1 2 3 4 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "1:5" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 1
  2. \n", "\t
  3. 2
  4. \n", "\t
  5. 3
  6. \n", "\t
  7. 4
  8. \n", "\t
  9. 5
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 1\n", "\\item 2\n", "\\item 3\n", "\\item 4\n", "\\item 5\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 1\n", "2. 2\n", "3. 3\n", "4. 4\n", "5. 5\n", "\n", "\n" ], "text/plain": [ "[1] 1 2 3 4 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "c(1,2,3,4,5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Named vectors" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\t
a
\n", "\t\t
1
\n", "\t
b
\n", "\t\t
2
\n", "\t
c
\n", "\t\t
3
\n", "\t
d
\n", "\t\t
4
\n", "\t
e
\n", "\t\t
5
\n", "
\n" ], "text/latex": [ "\\begin{description*}\n", "\\item[a] 1\n", "\\item[b] 2\n", "\\item[c] 3\n", "\\item[d] 4\n", "\\item[e] 5\n", "\\end{description*}\n" ], "text/markdown": [ "a\n", ": 1b\n", ": 2c\n", ": 3d\n", ": 4e\n", ": 5\n", "\n" ], "text/plain": [ "a b c d e \n", "1 2 3 4 5 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "c(a=1, b=2, c=3, d=4, e=5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Lists" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\t
$a
\n", "\t\t
1
\n", "\t
$b
\n", "\t\t
TRUE
\n", "\t
$c
\n", "\t\t
'hello'
\n", "
\n" ], "text/latex": [ "\\begin{description}\n", "\\item[\\$a] 1\n", "\\item[\\$b] TRUE\n", "\\item[\\$c] 'hello'\n", "\\end{description}\n" ], "text/markdown": [ "$a\n", ": 1\n", "$b\n", ": TRUE\n", "$c\n", ": 'hello'\n", "\n", "\n" ], "text/plain": [ "$a\n", "[1] 1\n", "\n", "$b\n", "[1] TRUE\n", "\n", "$c\n", "[1] \"hello\"\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "list(a=1, b=TRUE, c=\"hello\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Data Frames\n", "\n", "A Data Frame is a special kind of List where all elements are vectros fo the same length." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A data.frame: 5 × 3
abc
<int><int><dbl>
1 6-0.2701866
2 7 0.4624501
3 8 0.1019228
4 9-1.5094554
510 0.4304919
\n" ], "text/latex": [ "A data.frame: 5 × 3\n", "\\begin{tabular}{r|lll}\n", " a & b & c\\\\\n", " & & \\\\\n", "\\hline\n", "\t 1 & 6 & -0.2701866\\\\\n", "\t 2 & 7 & 0.4624501\\\\\n", "\t 3 & 8 & 0.1019228\\\\\n", "\t 4 & 9 & -1.5094554\\\\\n", "\t 5 & 10 & 0.4304919\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 5 × 3\n", "\n", "| a <int> | b <int> | c <dbl> |\n", "|---|---|---|\n", "| 1 | 6 | -0.2701866 |\n", "| 2 | 7 | 0.4624501 |\n", "| 3 | 8 | 0.1019228 |\n", "| 4 | 9 | -1.5094554 |\n", "| 5 | 10 | 0.4304919 |\n", "\n" ], "text/plain": [ " a b c \n", "1 1 6 -0.2701866\n", "2 2 7 0.4624501\n", "3 3 8 0.1019228\n", "4 4 9 -1.5094554\n", "5 5 10 0.4304919" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data.frame(a=1:5, b=6:10, c=rnorm(5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Basic Data Frame manipulation" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "df <- data.frame(a=1:5, b=6:10, c=rnorm(5))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A data.frame: 5 × 3
abc
<int><int><dbl>
1 6 0.5207780
2 7-1.5697044
3 8 0.3914048
4 9-0.5415737
510-0.9471250
\n" ], "text/latex": [ "A data.frame: 5 × 3\n", "\\begin{tabular}{r|lll}\n", " a & b & c\\\\\n", " & & \\\\\n", "\\hline\n", "\t 1 & 6 & 0.5207780\\\\\n", "\t 2 & 7 & -1.5697044\\\\\n", "\t 3 & 8 & 0.3914048\\\\\n", "\t 4 & 9 & -0.5415737\\\\\n", "\t 5 & 10 & -0.9471250\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 5 × 3\n", "\n", "| a <int> | b <int> | c <dbl> |\n", "|---|---|---|\n", "| 1 | 6 | 0.5207780 |\n", "| 2 | 7 | -1.5697044 |\n", "| 3 | 8 | 0.3914048 |\n", "| 4 | 9 | -0.5415737 |\n", "| 5 | 10 | -0.9471250 |\n", "\n" ], "text/plain": [ " a b c \n", "1 1 6 0.5207780\n", "2 2 7 -1.5697044\n", "3 3 8 0.3914048\n", "4 4 9 -0.5415737\n", "5 5 10 -0.9471250" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get columns" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 6
  2. \n", "\t
  3. 7
  4. \n", "\t
  5. 8
  6. \n", "\t
  7. 9
  8. \n", "\t
  9. 10
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 6\n", "\\item 7\n", "\\item 8\n", "\\item 9\n", "\\item 10\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 6\n", "2. 7\n", "3. 8\n", "4. 9\n", "5. 10\n", "\n", "\n" ], "text/plain": [ "[1] 6 7 8 9 10" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df$b" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 6
  2. \n", "\t
  3. 7
  4. \n", "\t
  5. 8
  6. \n", "\t
  7. 9
  8. \n", "\t
  9. 10
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 6\n", "\\item 7\n", "\\item 8\n", "\\item 9\n", "\\item 10\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 6\n", "2. 7\n", "3. 8\n", "4. 9\n", "5. 10\n", "\n", "\n" ], "text/plain": [ "[1] 6 7 8 9 10" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[['b']]" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 6
  2. \n", "\t
  3. 7
  4. \n", "\t
  5. 8
  6. \n", "\t
  7. 9
  8. \n", "\t
  9. 10
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 6\n", "\\item 7\n", "\\item 8\n", "\\item 9\n", "\\item 10\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 6\n", "2. 7\n", "3. 8\n", "4. 9\n", "5. 10\n", "\n", "\n" ], "text/plain": [ "[1] 6 7 8 9 10" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[,2]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get rows" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\n", "
A data.frame: 1 × 3
abc
<int><int><dbl>
3380.3914048
\n" ], "text/latex": [ "A data.frame: 1 × 3\n", "\\begin{tabular}{r|lll}\n", " & a & b & c\\\\\n", " & & & \\\\\n", "\\hline\n", "\t3 & 3 & 8 & 0.3914048\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 1 × 3\n", "\n", "| | a <int> | b <int> | c <dbl> |\n", "|---|---|---|---|\n", "| 3 | 3 | 8 | 0.3914048 |\n", "\n" ], "text/plain": [ " a b c \n", "3 3 8 0.3914048" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[3,]" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\n", "
A data.frame: 2 × 3
abc
<int><int><dbl>
1160.5207780
3380.3914048
\n" ], "text/latex": [ "A data.frame: 2 × 3\n", "\\begin{tabular}{r|lll}\n", " & a & b & c\\\\\n", " & & & \\\\\n", "\\hline\n", "\t1 & 1 & 6 & 0.5207780\\\\\n", "\t3 & 3 & 8 & 0.3914048\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 2 × 3\n", "\n", "| | a <int> | b <int> | c <dbl> |\n", "|---|---|---|---|\n", "| 1 | 1 | 6 | 0.5207780 |\n", "| 3 | 3 | 8 | 0.3914048 |\n", "\n" ], "text/plain": [ " a b c \n", "1 1 6 0.5207780\n", "3 3 8 0.3914048" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[c(1,3), ]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get cell" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "-1.56970441859343" ], "text/latex": [ "-1.56970441859343" ], "text/markdown": [ "-1.56970441859343" ], "text/plain": [ "[1] -1.569704" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[2,3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get sub-frame" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
A data.frame: 5 × 2
ac
<int><dbl>
1 0.5207780
2-1.5697044
3 0.3914048
4-0.5415737
5-0.9471250
\n" ], "text/latex": [ "A data.frame: 5 × 2\n", "\\begin{tabular}{r|ll}\n", " a & c\\\\\n", " & \\\\\n", "\\hline\n", "\t 1 & 0.5207780\\\\\n", "\t 2 & -1.5697044\\\\\n", "\t 3 & 0.3914048\\\\\n", "\t 4 & -0.5415737\\\\\n", "\t 5 & -0.9471250\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 5 × 2\n", "\n", "| a <int> | c <dbl> |\n", "|---|---|\n", "| 1 | 0.5207780 |\n", "| 2 | -1.5697044 |\n", "| 3 | 0.3914048 |\n", "| 4 | -0.5415737 |\n", "| 5 | -0.9471250 |\n", "\n" ], "text/plain": [ " a c \n", "1 1 0.5207780\n", "2 2 -1.5697044\n", "3 3 0.3914048\n", "4 4 -0.5415737\n", "5 5 -0.9471250" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[c(1,3)]" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\n", "\n", "\t\n", "\t\n", "\n", "
A data.frame: 2 × 2
bc
<int><dbl>
160.5207780
380.3914048
\n" ], "text/latex": [ "A data.frame: 2 × 2\n", "\\begin{tabular}{r|ll}\n", " & b & c\\\\\n", " & & \\\\\n", "\\hline\n", "\t1 & 6 & 0.5207780\\\\\n", "\t3 & 8 & 0.3914048\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A data.frame: 2 × 2\n", "\n", "| | b <int> | c <dbl> |\n", "|---|---|---|\n", "| 1 | 6 | 0.5207780 |\n", "| 3 | 8 | 0.3914048 |\n", "\n" ], "text/plain": [ " b c \n", "1 6 0.5207780\n", "3 8 0.3914048" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df[c(1,3), 2:3]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "R", "language": "R", "name": "ir" }, "language_info": { "codemirror_mode": "r", "file_extension": ".r", "mimetype": "text/x-r-source", "name": "R", "pygments_lexer": "r", "version": "3.6.0" } }, "nbformat": 4, "nbformat_minor": 2 }