diff --git a/2-Working-With-Data/07-python/R/notebook.ipynb b/2-Working-With-Data/07-python/R/notebook.ipynb new file mode 100644 index 0000000..605b211 --- /dev/null +++ b/2-Working-With-Data/07-python/R/notebook.ipynb @@ -0,0 +1,2131 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "9f9b980c", + "metadata": {}, + "source": [ + "## Pandas Usecase in R\n", + " We have to use dplyr library to solve pandas usecase in R. We will start importing typical data science library" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "625abf4a", + "metadata": {}, + "outputs": [], + "source": [ + "options(warn=-1)\n", + "library(dplyr)\n", + "library(tidyverse)\n", + "library(lubridate)\n", + "library(zoo)\n", + "library(xts)\n", + "library('ggplot2')" + ] + }, + { + "cell_type": "markdown", + "id": "d786e051", + "metadata": {}, + "source": [ + "## Series" + ] + }, + { + "cell_type": "markdown", + "id": "0f47587a", + "metadata": {}, + "source": [ + " Series is like a list or 1D-array, but with index. All operations are index-aligned. Indexing of row in R we have to use row.names.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "f659f553", + "metadata": {}, + "outputs": [], + "source": [ + "a<- 1:9" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "9acc193d", + "metadata": {}, + "outputs": [], + "source": [ + "b = c(\"I\",\"like\",\"to\",\"use\",\"Python\",\"and\",\"Pandas\",\"very\",\"much\")" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "f577ec14", + "metadata": {}, + "outputs": [], + "source": [ + "a1 = length(a)\n", + "b1 = length(b)" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "31e069a0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " a\n", + "1 1\n", + "2 2\n", + "3 3\n", + "4 4\n", + "5 5\n", + "6 6\n", + "7 7\n", + "8 8\n", + "9 9\n" + ] + } + ], + "source": [ + "a = data.frame(a,row.names = c(1:a1))\n", + "print(a)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "29ce166e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " b\n", + "1 I\n", + "2 like\n", + "3 to\n", + "4 use\n", + "5 Python\n", + "6 and\n", + "7 Pandas\n", + "8 very\n", + "9 much\n" + ] + } + ], + "source": [ + "b = data.frame(b,row.names = c(1:b1))\n", + "print(b)" + ] + }, + { + "cell_type": "markdown", + "id": "a83abe74", + "metadata": {}, + "source": [ + " One of the frequent usages of series is time series. In time series, the index has a special structure - typically a range of dates or datetimes. The easiest way to create time series using the ts function. But we will try another way to implement time series. We have to use the lubridate library to create an index of dates using the seq function.\n", + " \n", + " Suppose we have a series that shows the amount of product bought every day, and we know that every Sunday we also need to take one additional item for ourselves. Here is how to model using series:" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "eeb683c7", + "metadata": {}, + "outputs": [], + "source": [ + "# We will use ggplot2 for visualizing the data\n", + "# If you want to change the plot size repr library will be used\n", + "library(repr)\n", + "options(repr.plot.width = 12,repr.plot.height=6)" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "e7788ca1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1] \"length of index is 366\"\n" + ] + }, + { + "data": { + "image/png": "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\nnXZjTwAAAABJRU5ErkJggg==", + "text/plain": [ + "plot without title" + ] + }, + "metadata": { + "image/png": { + "height": 360, + "width": 720 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "start_date <- mdy(\"Jan 1, 2020\")\n", + "end_date <- mdy(\"Dec 31, 2020\")\n", + "idx = seq(start_date,end_date,by ='day')\n", + "print(paste(\"length of index is \",length(idx)))\n", + "size = length(idx)\n", + "sales = runif(366,min=25,max=50)\n", + "sold_items <- data.frame(row.names=idx[0:size],sales)\n", + "ggplot(sold_items,aes(x=idx,y=sales)) + geom_point(color = \"firebrick\", shape = \"diamond\", size = 2) +\n", + " geom_line(color = \"firebrick\", size = .3)" + ] + }, + { + "cell_type": "markdown", + "id": "3f199e43", + "metadata": {}, + "source": [ + "We are merging additional_items and sold_items so that we can find the total no of products.\n", + "As you can see, we are having problems here to find the total, we are getting NaN value as in the weekly series non-mentioned days are considered to be missing (NaN) if we add NaN to a number that gives us NaN.\n", + "In order to do addition, we need to replace NAN with 0." + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "abe41544", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 53 × 1
additional_product
<dbl>
2020-01-0110
2020-01-0810
2020-01-1510
2020-01-2210
2020-01-2910
2020-02-0510
2020-02-1210
2020-02-1910
2020-02-2610
2020-03-0410
2020-03-1110
2020-03-1810
2020-03-2510
2020-04-0110
2020-04-0810
2020-04-1510
2020-04-2210
2020-04-2910
2020-05-0610
2020-05-1310
2020-05-2010
2020-05-2710
2020-06-0310
2020-06-1010
2020-06-1710
2020-06-2410
2020-07-0110
2020-07-0810
2020-07-1510
2020-07-2210
2020-07-2910
2020-08-0510
2020-08-1210
2020-08-1910
2020-08-2610
2020-09-0210
2020-09-0910
2020-09-1610
2020-09-2310
2020-09-3010
2020-10-0710
2020-10-1410
2020-10-2110
2020-10-2810
2020-11-0410
2020-11-1110
2020-11-1810
2020-11-2510
2020-12-0210
2020-12-0910
2020-12-1610
2020-12-2310
2020-12-3010
\n" + ], + "text/latex": [ + "A data.frame: 53 × 1\n", + "\\begin{tabular}{r|l}\n", + " & additional\\_product\\\\\n", + " & \\\\\n", + "\\hline\n", + "\t2020-01-01 & 10\\\\\n", + "\t2020-01-08 & 10\\\\\n", + "\t2020-01-15 & 10\\\\\n", + "\t2020-01-22 & 10\\\\\n", + "\t2020-01-29 & 10\\\\\n", + "\t2020-02-05 & 10\\\\\n", + "\t2020-02-12 & 10\\\\\n", + "\t2020-02-19 & 10\\\\\n", + "\t2020-02-26 & 10\\\\\n", + "\t2020-03-04 & 10\\\\\n", + "\t2020-03-11 & 10\\\\\n", + "\t2020-03-18 & 10\\\\\n", + "\t2020-03-25 & 10\\\\\n", + "\t2020-04-01 & 10\\\\\n", + "\t2020-04-08 & 10\\\\\n", + "\t2020-04-15 & 10\\\\\n", + "\t2020-04-22 & 10\\\\\n", + "\t2020-04-29 & 10\\\\\n", + "\t2020-05-06 & 10\\\\\n", + "\t2020-05-13 & 10\\\\\n", + "\t2020-05-20 & 10\\\\\n", + "\t2020-05-27 & 10\\\\\n", + "\t2020-06-03 & 10\\\\\n", + "\t2020-06-10 & 10\\\\\n", + "\t2020-06-17 & 10\\\\\n", + "\t2020-06-24 & 10\\\\\n", + "\t2020-07-01 & 10\\\\\n", + "\t2020-07-08 & 10\\\\\n", + "\t2020-07-15 & 10\\\\\n", + "\t2020-07-22 & 10\\\\\n", + "\t2020-07-29 & 10\\\\\n", + "\t2020-08-05 & 10\\\\\n", + "\t2020-08-12 & 10\\\\\n", + "\t2020-08-19 & 10\\\\\n", + "\t2020-08-26 & 10\\\\\n", + "\t2020-09-02 & 10\\\\\n", + "\t2020-09-09 & 10\\\\\n", + "\t2020-09-16 & 10\\\\\n", + "\t2020-09-23 & 10\\\\\n", + "\t2020-09-30 & 10\\\\\n", + "\t2020-10-07 & 10\\\\\n", + "\t2020-10-14 & 10\\\\\n", + "\t2020-10-21 & 10\\\\\n", + "\t2020-10-28 & 10\\\\\n", + "\t2020-11-04 & 10\\\\\n", + "\t2020-11-11 & 10\\\\\n", + "\t2020-11-18 & 10\\\\\n", + "\t2020-11-25 & 10\\\\\n", + "\t2020-12-02 & 10\\\\\n", + "\t2020-12-09 & 10\\\\\n", + "\t2020-12-16 & 10\\\\\n", + "\t2020-12-23 & 10\\\\\n", + "\t2020-12-30 & 10\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 53 × 1\n", + "\n", + "| | additional_product <dbl> |\n", + "|---|---|\n", + "| 2020-01-01 | 10 |\n", + "| 2020-01-08 | 10 |\n", + "| 2020-01-15 | 10 |\n", + "| 2020-01-22 | 10 |\n", + "| 2020-01-29 | 10 |\n", + "| 2020-02-05 | 10 |\n", + "| 2020-02-12 | 10 |\n", + "| 2020-02-19 | 10 |\n", + "| 2020-02-26 | 10 |\n", + "| 2020-03-04 | 10 |\n", + "| 2020-03-11 | 10 |\n", + "| 2020-03-18 | 10 |\n", + "| 2020-03-25 | 10 |\n", + "| 2020-04-01 | 10 |\n", + "| 2020-04-08 | 10 |\n", + "| 2020-04-15 | 10 |\n", + "| 2020-04-22 | 10 |\n", + "| 2020-04-29 | 10 |\n", + "| 2020-05-06 | 10 |\n", + "| 2020-05-13 | 10 |\n", + "| 2020-05-20 | 10 |\n", + "| 2020-05-27 | 10 |\n", + "| 2020-06-03 | 10 |\n", + "| 2020-06-10 | 10 |\n", + "| 2020-06-17 | 10 |\n", + "| 2020-06-24 | 10 |\n", + "| 2020-07-01 | 10 |\n", + "| 2020-07-08 | 10 |\n", + "| 2020-07-15 | 10 |\n", + "| 2020-07-22 | 10 |\n", + "| 2020-07-29 | 10 |\n", + "| 2020-08-05 | 10 |\n", + "| 2020-08-12 | 10 |\n", + "| 2020-08-19 | 10 |\n", + "| 2020-08-26 | 10 |\n", + "| 2020-09-02 | 10 |\n", + "| 2020-09-09 | 10 |\n", + "| 2020-09-16 | 10 |\n", + "| 2020-09-23 | 10 |\n", + "| 2020-09-30 | 10 |\n", + "| 2020-10-07 | 10 |\n", + "| 2020-10-14 | 10 |\n", + "| 2020-10-21 | 10 |\n", + "| 2020-10-28 | 10 |\n", + "| 2020-11-04 | 10 |\n", + "| 2020-11-11 | 10 |\n", + "| 2020-11-18 | 10 |\n", + "| 2020-11-25 | 10 |\n", + "| 2020-12-02 | 10 |\n", + "| 2020-12-09 | 10 |\n", + "| 2020-12-16 | 10 |\n", + "| 2020-12-23 | 10 |\n", + "| 2020-12-30 | 10 |\n", + "\n" + ], + "text/plain": [ + " additional_product\n", + "2020-01-01 10 \n", + "2020-01-08 10 \n", + "2020-01-15 10 \n", + "2020-01-22 10 \n", + "2020-01-29 10 \n", + "2020-02-05 10 \n", + "2020-02-12 10 \n", + "2020-02-19 10 \n", + "2020-02-26 10 \n", + "2020-03-04 10 \n", + "2020-03-11 10 \n", + "2020-03-18 10 \n", + "2020-03-25 10 \n", + "2020-04-01 10 \n", + "2020-04-08 10 \n", + "2020-04-15 10 \n", + "2020-04-22 10 \n", + "2020-04-29 10 \n", + "2020-05-06 10 \n", + "2020-05-13 10 \n", + "2020-05-20 10 \n", + "2020-05-27 10 \n", + "2020-06-03 10 \n", + "2020-06-10 10 \n", + "2020-06-17 10 \n", + "2020-06-24 10 \n", + "2020-07-01 10 \n", + "2020-07-08 10 \n", + "2020-07-15 10 \n", + "2020-07-22 10 \n", + "2020-07-29 10 \n", + "2020-08-05 10 \n", + "2020-08-12 10 \n", + "2020-08-19 10 \n", + "2020-08-26 10 \n", + "2020-09-02 10 \n", + "2020-09-09 10 \n", + "2020-09-16 10 \n", + "2020-09-23 10 \n", + "2020-09-30 10 \n", + "2020-10-07 10 \n", + "2020-10-14 10 \n", + "2020-10-21 10 \n", + "2020-10-28 10 \n", + "2020-11-04 10 \n", + "2020-11-11 10 \n", + "2020-11-18 10 \n", + "2020-11-25 10 \n", + "2020-12-02 10 \n", + "2020-12-09 10 \n", + "2020-12-16 10 \n", + "2020-12-23 10 \n", + "2020-12-30 10 " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 366 × 1
total
<dbl>
2020-01-0153.59979
2020-01-02 NA
2020-01-03 NA
2020-01-04 NA
2020-01-05 NA
2020-01-06 NA
2020-01-07 NA
2020-01-0840.93455
2020-01-09 NA
2020-01-10 NA
2020-01-11 NA
2020-01-12 NA
2020-01-13 NA
2020-01-14 NA
2020-01-1559.24704
2020-01-16 NA
2020-01-17 NA
2020-01-18 NA
2020-01-19 NA
2020-01-20 NA
2020-01-21 NA
2020-01-2238.26416
2020-01-23 NA
2020-01-24 NA
2020-01-25 NA
2020-01-26 NA
2020-01-27 NA
2020-01-28 NA
2020-01-2944.58327
2020-01-30 NA
......
2020-12-0241.74811
2020-12-03 NA
2020-12-04 NA
2020-12-05 NA
2020-12-06 NA
2020-12-07 NA
2020-12-08 NA
2020-12-0937.85650
2020-12-10 NA
2020-12-11 NA
2020-12-12 NA
2020-12-13 NA
2020-12-14 NA
2020-12-15 NA
2020-12-1646.73560
2020-12-17 NA
2020-12-18 NA
2020-12-19 NA
2020-12-20 NA
2020-12-21 NA
2020-12-22 NA
2020-12-2340.42143
2020-12-24 NA
2020-12-25 NA
2020-12-26 NA
2020-12-27 NA
2020-12-28 NA
2020-12-29 NA
2020-12-3041.20298
2020-12-31 NA
\n" + ], + "text/latex": [ + "A data.frame: 366 × 1\n", + "\\begin{tabular}{r|l}\n", + " & total\\\\\n", + " & \\\\\n", + "\\hline\n", + "\t2020-01-01 & 53.59979\\\\\n", + "\t2020-01-02 & NA\\\\\n", + "\t2020-01-03 & NA\\\\\n", + "\t2020-01-04 & NA\\\\\n", + "\t2020-01-05 & NA\\\\\n", + "\t2020-01-06 & NA\\\\\n", + "\t2020-01-07 & NA\\\\\n", + "\t2020-01-08 & 40.93455\\\\\n", + "\t2020-01-09 & NA\\\\\n", + "\t2020-01-10 & NA\\\\\n", + "\t2020-01-11 & NA\\\\\n", + "\t2020-01-12 & NA\\\\\n", + "\t2020-01-13 & NA\\\\\n", + "\t2020-01-14 & NA\\\\\n", + "\t2020-01-15 & 59.24704\\\\\n", + "\t2020-01-16 & NA\\\\\n", + "\t2020-01-17 & NA\\\\\n", + "\t2020-01-18 & NA\\\\\n", + "\t2020-01-19 & NA\\\\\n", + "\t2020-01-20 & NA\\\\\n", + "\t2020-01-21 & NA\\\\\n", + "\t2020-01-22 & 38.26416\\\\\n", + "\t2020-01-23 & NA\\\\\n", + "\t2020-01-24 & NA\\\\\n", + "\t2020-01-25 & NA\\\\\n", + "\t2020-01-26 & NA\\\\\n", + "\t2020-01-27 & NA\\\\\n", + "\t2020-01-28 & NA\\\\\n", + "\t2020-01-29 & 44.58327\\\\\n", + "\t2020-01-30 & NA\\\\\n", + "\t... & ...\\\\\n", + "\t2020-12-02 & 41.74811\\\\\n", + "\t2020-12-03 & NA\\\\\n", + "\t2020-12-04 & NA\\\\\n", + "\t2020-12-05 & NA\\\\\n", + "\t2020-12-06 & NA\\\\\n", + "\t2020-12-07 & NA\\\\\n", + "\t2020-12-08 & NA\\\\\n", + "\t2020-12-09 & 37.85650\\\\\n", + "\t2020-12-10 & NA\\\\\n", + "\t2020-12-11 & NA\\\\\n", + "\t2020-12-12 & NA\\\\\n", + "\t2020-12-13 & NA\\\\\n", + "\t2020-12-14 & NA\\\\\n", + "\t2020-12-15 & NA\\\\\n", + "\t2020-12-16 & 46.73560\\\\\n", + "\t2020-12-17 & NA\\\\\n", + "\t2020-12-18 & NA\\\\\n", + "\t2020-12-19 & NA\\\\\n", + "\t2020-12-20 & NA\\\\\n", + "\t2020-12-21 & NA\\\\\n", + "\t2020-12-22 & NA\\\\\n", + "\t2020-12-23 & 40.42143\\\\\n", + "\t2020-12-24 & NA\\\\\n", + "\t2020-12-25 & NA\\\\\n", + "\t2020-12-26 & NA\\\\\n", + "\t2020-12-27 & NA\\\\\n", + "\t2020-12-28 & NA\\\\\n", + "\t2020-12-29 & NA\\\\\n", + "\t2020-12-30 & 41.20298\\\\\n", + "\t2020-12-31 & NA\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 366 × 1\n", + "\n", + "| | total <dbl> |\n", + "|---|---|\n", + "| 2020-01-01 | 53.59979 |\n", + "| 2020-01-02 | NA |\n", + "| 2020-01-03 | NA |\n", + "| 2020-01-04 | NA |\n", + "| 2020-01-05 | NA |\n", + "| 2020-01-06 | NA |\n", + "| 2020-01-07 | NA |\n", + "| 2020-01-08 | 40.93455 |\n", + "| 2020-01-09 | NA |\n", + "| 2020-01-10 | NA |\n", + "| 2020-01-11 | NA |\n", + "| 2020-01-12 | NA |\n", + "| 2020-01-13 | NA |\n", + "| 2020-01-14 | NA |\n", + "| 2020-01-15 | 59.24704 |\n", + "| 2020-01-16 | NA |\n", + "| 2020-01-17 | NA |\n", + "| 2020-01-18 | NA |\n", + "| 2020-01-19 | NA |\n", + "| 2020-01-20 | NA |\n", + "| 2020-01-21 | NA |\n", + "| 2020-01-22 | 38.26416 |\n", + "| 2020-01-23 | NA |\n", + "| 2020-01-24 | NA |\n", + "| 2020-01-25 | NA |\n", + "| 2020-01-26 | NA |\n", + "| 2020-01-27 | NA |\n", + "| 2020-01-28 | NA |\n", + "| 2020-01-29 | 44.58327 |\n", + "| 2020-01-30 | NA |\n", + "| ... | ... |\n", + "| 2020-12-02 | 41.74811 |\n", + "| 2020-12-03 | NA |\n", + "| 2020-12-04 | NA |\n", + "| 2020-12-05 | NA |\n", + "| 2020-12-06 | NA |\n", + "| 2020-12-07 | NA |\n", + "| 2020-12-08 | NA |\n", + "| 2020-12-09 | 37.85650 |\n", + "| 2020-12-10 | NA |\n", + "| 2020-12-11 | NA |\n", + "| 2020-12-12 | NA |\n", + "| 2020-12-13 | NA |\n", + "| 2020-12-14 | NA |\n", + "| 2020-12-15 | NA |\n", + "| 2020-12-16 | 46.73560 |\n", + "| 2020-12-17 | NA |\n", + "| 2020-12-18 | NA |\n", + "| 2020-12-19 | NA |\n", + "| 2020-12-20 | NA |\n", + "| 2020-12-21 | NA |\n", + "| 2020-12-22 | NA |\n", + "| 2020-12-23 | 40.42143 |\n", + "| 2020-12-24 | NA |\n", + "| 2020-12-25 | NA |\n", + "| 2020-12-26 | NA |\n", + "| 2020-12-27 | NA |\n", + "| 2020-12-28 | NA |\n", + "| 2020-12-29 | NA |\n", + "| 2020-12-30 | 41.20298 |\n", + "| 2020-12-31 | NA |\n", + "\n" + ], + "text/plain": [ + " total \n", + "2020-01-01 53.59979\n", + "2020-01-02 NA\n", + "2020-01-03 NA\n", + "2020-01-04 NA\n", + "2020-01-05 NA\n", + "2020-01-06 NA\n", + "2020-01-07 NA\n", + "2020-01-08 40.93455\n", + "2020-01-09 NA\n", + "2020-01-10 NA\n", + "2020-01-11 NA\n", + "2020-01-12 NA\n", + "2020-01-13 NA\n", + "2020-01-14 NA\n", + "2020-01-15 59.24704\n", + "2020-01-16 NA\n", + "2020-01-17 NA\n", + "2020-01-18 NA\n", + "2020-01-19 NA\n", + "2020-01-20 NA\n", + "2020-01-21 NA\n", + "2020-01-22 38.26416\n", + "2020-01-23 NA\n", + "2020-01-24 NA\n", + "2020-01-25 NA\n", + "2020-01-26 NA\n", + "2020-01-27 NA\n", + "2020-01-28 NA\n", + "2020-01-29 44.58327\n", + "2020-01-30 NA\n", + "... ... \n", + "2020-12-02 41.74811\n", + "2020-12-03 NA\n", + "2020-12-04 NA\n", + "2020-12-05 NA\n", + "2020-12-06 NA\n", + "2020-12-07 NA\n", + "2020-12-08 NA\n", + "2020-12-09 37.85650\n", + "2020-12-10 NA\n", + "2020-12-11 NA\n", + "2020-12-12 NA\n", + "2020-12-13 NA\n", + "2020-12-14 NA\n", + "2020-12-15 NA\n", + "2020-12-16 46.73560\n", + "2020-12-17 NA\n", + "2020-12-18 NA\n", + "2020-12-19 NA\n", + "2020-12-20 NA\n", + "2020-12-21 NA\n", + "2020-12-22 NA\n", + "2020-12-23 40.42143\n", + "2020-12-24 NA\n", + "2020-12-25 NA\n", + "2020-12-26 NA\n", + "2020-12-27 NA\n", + "2020-12-28 NA\n", + "2020-12-29 NA\n", + "2020-12-30 41.20298\n", + "2020-12-31 NA" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "index = seq(start_date,end_date,by = 'week')\n", + "sz = length(index)\n", + "additional_product <- rep(10,53)\n", + "additional_items <- data.frame(row.names = index[0:sz],additional_product)\n", + "additional_items\n", + "# we are merging two dataframe so that we can add\n", + "additional_item = merge(additional_items,sold_items, by = 0, all = TRUE)[-1] \n", + "total = data.frame(row.names=idx[0:size],additional_item$additional_product + additional_item$sales)\n", + "colnames(total) = c('total')\n", + "total" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "387cb4c2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 366 × 1
total
<dbl>
2020-01-0153.59979
2020-01-0230.41127
2020-01-0348.54839
2020-01-0439.20897
2020-01-0539.09894
2020-01-0647.53019
2020-01-0744.94766
2020-01-0840.93455
2020-01-0937.66561
2020-01-1031.68825
2020-01-1145.30576
2020-01-1226.45509
2020-01-1345.81249
2020-01-1446.84547
2020-01-1559.24704
2020-01-1629.28688
2020-01-1732.41731
2020-01-1845.23295
2020-01-1948.54330
2020-01-2036.69353
2020-01-2143.09588
2020-01-2238.26416
2020-01-2345.56863
2020-01-2425.70944
2020-01-2537.38721
2020-01-2644.53955
2020-01-2746.88427
2020-01-2848.05540
2020-01-2944.58327
2020-01-3026.19490
......
2020-12-0241.74811
2020-12-0335.03915
2020-12-0425.84637
2020-12-0527.73147
2020-12-0639.00993
2020-12-0741.03187
2020-12-0826.33862
2020-12-0937.85650
2020-12-1041.98943
2020-12-1136.68901
2020-12-1246.96883
2020-12-1339.70374
2020-12-1446.59464
2020-12-1541.24742
2020-12-1646.73560
2020-12-1732.68275
2020-12-1846.64238
2020-12-1925.22163
2020-12-2039.79997
2020-12-2134.45013
2020-12-2248.71183
2020-12-2340.42143
2020-12-2432.41991
2020-12-2539.12296
2020-12-2629.43616
2020-12-2739.09337
2020-12-2838.09288
2020-12-2941.00681
2020-12-3041.20298
2020-12-3143.25232
\n" + ], + "text/latex": [ + "A data.frame: 366 × 1\n", + "\\begin{tabular}{r|l}\n", + " & total\\\\\n", + " & \\\\\n", + "\\hline\n", + "\t2020-01-01 & 53.59979\\\\\n", + "\t2020-01-02 & 30.41127\\\\\n", + "\t2020-01-03 & 48.54839\\\\\n", + "\t2020-01-04 & 39.20897\\\\\n", + "\t2020-01-05 & 39.09894\\\\\n", + "\t2020-01-06 & 47.53019\\\\\n", + "\t2020-01-07 & 44.94766\\\\\n", + "\t2020-01-08 & 40.93455\\\\\n", + "\t2020-01-09 & 37.66561\\\\\n", + "\t2020-01-10 & 31.68825\\\\\n", + "\t2020-01-11 & 45.30576\\\\\n", + "\t2020-01-12 & 26.45509\\\\\n", + "\t2020-01-13 & 45.81249\\\\\n", + "\t2020-01-14 & 46.84547\\\\\n", + "\t2020-01-15 & 59.24704\\\\\n", + "\t2020-01-16 & 29.28688\\\\\n", + "\t2020-01-17 & 32.41731\\\\\n", + "\t2020-01-18 & 45.23295\\\\\n", + "\t2020-01-19 & 48.54330\\\\\n", + "\t2020-01-20 & 36.69353\\\\\n", + "\t2020-01-21 & 43.09588\\\\\n", + "\t2020-01-22 & 38.26416\\\\\n", + "\t2020-01-23 & 45.56863\\\\\n", + "\t2020-01-24 & 25.70944\\\\\n", + "\t2020-01-25 & 37.38721\\\\\n", + "\t2020-01-26 & 44.53955\\\\\n", + "\t2020-01-27 & 46.88427\\\\\n", + "\t2020-01-28 & 48.05540\\\\\n", + "\t2020-01-29 & 44.58327\\\\\n", + "\t2020-01-30 & 26.19490\\\\\n", + "\t... & ...\\\\\n", + "\t2020-12-02 & 41.74811\\\\\n", + "\t2020-12-03 & 35.03915\\\\\n", + "\t2020-12-04 & 25.84637\\\\\n", + "\t2020-12-05 & 27.73147\\\\\n", + "\t2020-12-06 & 39.00993\\\\\n", + "\t2020-12-07 & 41.03187\\\\\n", + "\t2020-12-08 & 26.33862\\\\\n", + "\t2020-12-09 & 37.85650\\\\\n", + "\t2020-12-10 & 41.98943\\\\\n", + "\t2020-12-11 & 36.68901\\\\\n", + "\t2020-12-12 & 46.96883\\\\\n", + "\t2020-12-13 & 39.70374\\\\\n", + "\t2020-12-14 & 46.59464\\\\\n", + "\t2020-12-15 & 41.24742\\\\\n", + "\t2020-12-16 & 46.73560\\\\\n", + "\t2020-12-17 & 32.68275\\\\\n", + "\t2020-12-18 & 46.64238\\\\\n", + "\t2020-12-19 & 25.22163\\\\\n", + "\t2020-12-20 & 39.79997\\\\\n", + "\t2020-12-21 & 34.45013\\\\\n", + "\t2020-12-22 & 48.71183\\\\\n", + "\t2020-12-23 & 40.42143\\\\\n", + "\t2020-12-24 & 32.41991\\\\\n", + "\t2020-12-25 & 39.12296\\\\\n", + "\t2020-12-26 & 29.43616\\\\\n", + "\t2020-12-27 & 39.09337\\\\\n", + "\t2020-12-28 & 38.09288\\\\\n", + "\t2020-12-29 & 41.00681\\\\\n", + "\t2020-12-30 & 41.20298\\\\\n", + "\t2020-12-31 & 43.25232\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 366 × 1\n", + "\n", + "| | total <dbl> |\n", + "|---|---|\n", + "| 2020-01-01 | 53.59979 |\n", + "| 2020-01-02 | 30.41127 |\n", + "| 2020-01-03 | 48.54839 |\n", + "| 2020-01-04 | 39.20897 |\n", + "| 2020-01-05 | 39.09894 |\n", + "| 2020-01-06 | 47.53019 |\n", + "| 2020-01-07 | 44.94766 |\n", + "| 2020-01-08 | 40.93455 |\n", + "| 2020-01-09 | 37.66561 |\n", + "| 2020-01-10 | 31.68825 |\n", + "| 2020-01-11 | 45.30576 |\n", + "| 2020-01-12 | 26.45509 |\n", + "| 2020-01-13 | 45.81249 |\n", + "| 2020-01-14 | 46.84547 |\n", + "| 2020-01-15 | 59.24704 |\n", + "| 2020-01-16 | 29.28688 |\n", + "| 2020-01-17 | 32.41731 |\n", + "| 2020-01-18 | 45.23295 |\n", + "| 2020-01-19 | 48.54330 |\n", + "| 2020-01-20 | 36.69353 |\n", + "| 2020-01-21 | 43.09588 |\n", + "| 2020-01-22 | 38.26416 |\n", + "| 2020-01-23 | 45.56863 |\n", + "| 2020-01-24 | 25.70944 |\n", + "| 2020-01-25 | 37.38721 |\n", + "| 2020-01-26 | 44.53955 |\n", + "| 2020-01-27 | 46.88427 |\n", + "| 2020-01-28 | 48.05540 |\n", + "| 2020-01-29 | 44.58327 |\n", + "| 2020-01-30 | 26.19490 |\n", + "| ... | ... |\n", + "| 2020-12-02 | 41.74811 |\n", + "| 2020-12-03 | 35.03915 |\n", + "| 2020-12-04 | 25.84637 |\n", + "| 2020-12-05 | 27.73147 |\n", + "| 2020-12-06 | 39.00993 |\n", + "| 2020-12-07 | 41.03187 |\n", + "| 2020-12-08 | 26.33862 |\n", + "| 2020-12-09 | 37.85650 |\n", + "| 2020-12-10 | 41.98943 |\n", + "| 2020-12-11 | 36.68901 |\n", + "| 2020-12-12 | 46.96883 |\n", + "| 2020-12-13 | 39.70374 |\n", + "| 2020-12-14 | 46.59464 |\n", + "| 2020-12-15 | 41.24742 |\n", + "| 2020-12-16 | 46.73560 |\n", + "| 2020-12-17 | 32.68275 |\n", + "| 2020-12-18 | 46.64238 |\n", + "| 2020-12-19 | 25.22163 |\n", + "| 2020-12-20 | 39.79997 |\n", + "| 2020-12-21 | 34.45013 |\n", + "| 2020-12-22 | 48.71183 |\n", + "| 2020-12-23 | 40.42143 |\n", + "| 2020-12-24 | 32.41991 |\n", + "| 2020-12-25 | 39.12296 |\n", + "| 2020-12-26 | 29.43616 |\n", + "| 2020-12-27 | 39.09337 |\n", + "| 2020-12-28 | 38.09288 |\n", + "| 2020-12-29 | 41.00681 |\n", + "| 2020-12-30 | 41.20298 |\n", + "| 2020-12-31 | 43.25232 |\n", + "\n" + ], + "text/plain": [ + " total \n", + "2020-01-01 53.59979\n", + "2020-01-02 30.41127\n", + "2020-01-03 48.54839\n", + "2020-01-04 39.20897\n", + "2020-01-05 39.09894\n", + "2020-01-06 47.53019\n", + "2020-01-07 44.94766\n", + "2020-01-08 40.93455\n", + "2020-01-09 37.66561\n", + "2020-01-10 31.68825\n", + "2020-01-11 45.30576\n", + "2020-01-12 26.45509\n", + "2020-01-13 45.81249\n", + "2020-01-14 46.84547\n", + "2020-01-15 59.24704\n", + "2020-01-16 29.28688\n", + "2020-01-17 32.41731\n", + "2020-01-18 45.23295\n", + "2020-01-19 48.54330\n", + "2020-01-20 36.69353\n", + "2020-01-21 43.09588\n", + "2020-01-22 38.26416\n", + "2020-01-23 45.56863\n", + "2020-01-24 25.70944\n", + "2020-01-25 37.38721\n", + "2020-01-26 44.53955\n", + "2020-01-27 46.88427\n", + "2020-01-28 48.05540\n", + "2020-01-29 44.58327\n", + "2020-01-30 26.19490\n", + "... ... \n", + "2020-12-02 41.74811\n", + "2020-12-03 35.03915\n", + "2020-12-04 25.84637\n", + "2020-12-05 27.73147\n", + "2020-12-06 39.00993\n", + "2020-12-07 41.03187\n", + "2020-12-08 26.33862\n", + "2020-12-09 37.85650\n", + "2020-12-10 41.98943\n", + "2020-12-11 36.68901\n", + "2020-12-12 46.96883\n", + "2020-12-13 39.70374\n", + "2020-12-14 46.59464\n", + "2020-12-15 41.24742\n", + "2020-12-16 46.73560\n", + "2020-12-17 32.68275\n", + "2020-12-18 46.64238\n", + "2020-12-19 25.22163\n", + "2020-12-20 39.79997\n", + "2020-12-21 34.45013\n", + "2020-12-22 48.71183\n", + "2020-12-23 40.42143\n", + "2020-12-24 32.41991\n", + "2020-12-25 39.12296\n", + "2020-12-26 29.43616\n", + "2020-12-27 39.09337\n", + "2020-12-28 38.09288\n", + "2020-12-29 41.00681\n", + "2020-12-30 41.20298\n", + "2020-12-31 43.25232" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "additional_item[is.na(additional_item)] = 0\n", + "total = data.frame(row.names=idx[0:size],additional_item$additional_product + additional_item$sales)\n", + "colnames(total) = c('total')\n", + "total" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "bdb60236", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "plot without title" + ] + }, + "metadata": { + "image/png": { + "height": 360, + "width": 720 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "ggplot(total,aes(x=idx,y=total)) + geom_point(color = \"firebrick\", shape = \"diamond\", size = 2) +\n", + " geom_line(color = \"firebrick\", linetype = \"dotted\", size = .3)" + ] + }, + { + "cell_type": "markdown", + "id": "38e65fd5", + "metadata": {}, + "source": [ + "We want to analyse total no of product in monthly basis.Thus, we find the mean of total no of product in a month and draw a bargraph" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "294dde87", + "metadata": {}, + "outputs": [], + "source": [ + "index = seq(start_date,end_date,by ='month')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "7542d95e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + " total\n", + "2020-01-31 41.03847\n", + "2020-02-29 40.91568\n", + "2020-03-31 39.27424\n", + "2020-04-30 37.63589\n", + "2020-05-31 38.75129\n", + "2020-06-30 38.75744\n", + "2020-07-31 38.35212\n", + "2020-08-31 40.43712\n", + "2020-09-30 38.90043\n", + "2020-10-31 37.99855\n", + "2020-11-30 41.20759\n", + "2020-12-31 38.46355" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\nQmCC", + "text/plain": [ + "plot without title" + ] + }, + "metadata": { + "image/png": { + "height": 360, + "width": 720 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "x<- as.xts(total, dateFormat =\"Date\")\n", + "(monthly<-apply.monthly(x,mean))\n", + "ggplot(monthly, aes(x=index, y=total)) + \n", + " geom_bar(stat = \"identity\", width=5) " + ] + }, + { + "cell_type": "markdown", + "id": "945feffd", + "metadata": {}, + "source": [ + "## DataFrame\n", + "Dataframe is essentially a collection of series with the same index. We can combine several series together into a dataframe. \n", + "For example we are making dataframe of a and b series" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "88a435ec", + "metadata": {}, + "outputs": [], + "source": [ + "a = data.frame(a,row.names = c(1:a1))" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "c4e2a6c1", + "metadata": {}, + "outputs": [], + "source": [ + "b = data.frame(b,row.names = c(1:b1))" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "2bb5177c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 9 × 2
ab
<int><chr>
11I
22like
33to
44use
55Python
66and
77Pandas
88very
99much
\n" + ], + "text/latex": [ + "A data.frame: 9 × 2\n", + "\\begin{tabular}{r|ll}\n", + " & a & b\\\\\n", + " & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I \\\\\n", + "\t2 & 2 & like \\\\\n", + "\t3 & 3 & to \\\\\n", + "\t4 & 4 & use \\\\\n", + "\t5 & 5 & Python\\\\\n", + "\t6 & 6 & and \\\\\n", + "\t7 & 7 & Pandas\\\\\n", + "\t8 & 8 & very \\\\\n", + "\t9 & 9 & much \\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 9 × 2\n", + "\n", + "| | a <int> | b <chr> |\n", + "|---|---|---|\n", + "| 1 | 1 | I |\n", + "| 2 | 2 | like |\n", + "| 3 | 3 | to |\n", + "| 4 | 4 | use |\n", + "| 5 | 5 | Python |\n", + "| 6 | 6 | and |\n", + "| 7 | 7 | Pandas |\n", + "| 8 | 8 | very |\n", + "| 9 | 9 | much |\n", + "\n" + ], + "text/plain": [ + " a b \n", + "1 1 I \n", + "2 2 like \n", + "3 3 to \n", + "4 4 use \n", + "5 5 Python\n", + "6 6 and \n", + "7 7 Pandas\n", + "8 8 very \n", + "9 9 much " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df<- data.frame(a,b)\n", + "df" + ] + }, + { + "cell_type": "markdown", + "id": "6531fe0e", + "metadata": {}, + "source": [ + "We can also rename the column name by using rename function" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "8f45d3a5", + "metadata": {}, + "outputs": [], + "source": [ + "df = \n", + " rename(df,\n", + " A = a,\n", + " B = b,\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "0efbf2d4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 9 × 2
AB
<int><chr>
11I
22like
33to
44use
55Python
66and
77Pandas
88very
99much
\n" + ], + "text/latex": [ + "A data.frame: 9 × 2\n", + "\\begin{tabular}{r|ll}\n", + " & A & B\\\\\n", + " & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I \\\\\n", + "\t2 & 2 & like \\\\\n", + "\t3 & 3 & to \\\\\n", + "\t4 & 4 & use \\\\\n", + "\t5 & 5 & Python\\\\\n", + "\t6 & 6 & and \\\\\n", + "\t7 & 7 & Pandas\\\\\n", + "\t8 & 8 & very \\\\\n", + "\t9 & 9 & much \\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 9 × 2\n", + "\n", + "| | A <int> | B <chr> |\n", + "|---|---|---|\n", + "| 1 | 1 | I |\n", + "| 2 | 2 | like |\n", + "| 3 | 3 | to |\n", + "| 4 | 4 | use |\n", + "| 5 | 5 | Python |\n", + "| 6 | 6 | and |\n", + "| 7 | 7 | Pandas |\n", + "| 8 | 8 | very |\n", + "| 9 | 9 | much |\n", + "\n" + ], + "text/plain": [ + " A B \n", + "1 1 I \n", + "2 2 like \n", + "3 3 to \n", + "4 4 use \n", + "5 5 Python\n", + "6 6 and \n", + "7 7 Pandas\n", + "8 8 very \n", + "9 9 much " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "id": "8ac0204f", + "metadata": {}, + "source": [ + "We can also select a column in a dataframe using select function" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "88b51fdc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Column A (series):\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 9 × 1
A
<int>
11
22
33
44
55
66
77
88
99
\n" + ], + "text/latex": [ + "A data.frame: 9 × 1\n", + "\\begin{tabular}{r|l}\n", + " & A\\\\\n", + " & \\\\\n", + "\\hline\n", + "\t1 & 1\\\\\n", + "\t2 & 2\\\\\n", + "\t3 & 3\\\\\n", + "\t4 & 4\\\\\n", + "\t5 & 5\\\\\n", + "\t6 & 6\\\\\n", + "\t7 & 7\\\\\n", + "\t8 & 8\\\\\n", + "\t9 & 9\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 9 × 1\n", + "\n", + "| | A <int> |\n", + "|---|---|\n", + "| 1 | 1 |\n", + "| 2 | 2 |\n", + "| 3 | 3 |\n", + "| 4 | 4 |\n", + "| 5 | 5 |\n", + "| 6 | 6 |\n", + "| 7 | 7 |\n", + "| 8 | 8 |\n", + "| 9 | 9 |\n", + "\n" + ], + "text/plain": [ + " A\n", + "1 1\n", + "2 2\n", + "3 3\n", + "4 4\n", + "5 5\n", + "6 6\n", + "7 7\n", + "8 8\n", + "9 9" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cat(\"Column A (series):\\n\")\n", + "select(df,'A')" + ] + }, + { + "cell_type": "markdown", + "id": "45397ec4", + "metadata": {}, + "source": [ + "We will extract rows that meet a certain logical criteria on series" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "010bcba8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 4 × 2
AB
<int><chr>
11I
22like
33to
44use
\n" + ], + "text/latex": [ + "A data.frame: 4 × 2\n", + "\\begin{tabular}{r|ll}\n", + " & A & B\\\\\n", + " & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I \\\\\n", + "\t2 & 2 & like\\\\\n", + "\t3 & 3 & to \\\\\n", + "\t4 & 4 & use \\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 4 × 2\n", + "\n", + "| | A <int> | B <chr> |\n", + "|---|---|---|\n", + "| 1 | 1 | I |\n", + "| 2 | 2 | like |\n", + "| 3 | 3 | to |\n", + "| 4 | 4 | use |\n", + "\n" + ], + "text/plain": [ + " A B \n", + "1 1 I \n", + "2 2 like\n", + "3 3 to \n", + "4 4 use " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df[df$A<5,]" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "082277db", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\n", + "
A data.frame: 1 × 2
AB
<int><chr>
66and
\n" + ], + "text/latex": [ + "A data.frame: 1 × 2\n", + "\\begin{tabular}{r|ll}\n", + " & A & B\\\\\n", + " & & \\\\\n", + "\\hline\n", + "\t6 & 6 & and\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 1 × 2\n", + "\n", + "| | A <int> | B <chr> |\n", + "|---|---|---|\n", + "| 6 | 6 | and |\n", + "\n" + ], + "text/plain": [ + " A B \n", + "6 6 and" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df[df$A>5 & df$A<7,]" + ] + }, + { + "cell_type": "markdown", + "id": "bf537050", + "metadata": {}, + "source": [ + "Creating a new columns. \n", + "\n", + "Code below creates a series which calculates the divergence of a from its mean value then merging into a existing dataframe." + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "0bbd19f8", + "metadata": {}, + "outputs": [], + "source": [ + "df$DivA <- df$A - mean(df$A)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "f36d96af", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 9 × 3
ABDivA
<int><chr><dbl>
11I -4
22like -3
33to -2
44use -1
55Python 0
66and 1
77Pandas 2
88very 3
99much 4
\n" + ], + "text/latex": [ + "A data.frame: 9 × 3\n", + "\\begin{tabular}{r|lll}\n", + " & A & B & DivA\\\\\n", + " & & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I & -4\\\\\n", + "\t2 & 2 & like & -3\\\\\n", + "\t3 & 3 & to & -2\\\\\n", + "\t4 & 4 & use & -1\\\\\n", + "\t5 & 5 & Python & 0\\\\\n", + "\t6 & 6 & and & 1\\\\\n", + "\t7 & 7 & Pandas & 2\\\\\n", + "\t8 & 8 & very & 3\\\\\n", + "\t9 & 9 & much & 4\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 9 × 3\n", + "\n", + "| | A <int> | B <chr> | DivA <dbl> |\n", + "|---|---|---|---|\n", + "| 1 | 1 | I | -4 |\n", + "| 2 | 2 | like | -3 |\n", + "| 3 | 3 | to | -2 |\n", + "| 4 | 4 | use | -1 |\n", + "| 5 | 5 | Python | 0 |\n", + "| 6 | 6 | and | 1 |\n", + "| 7 | 7 | Pandas | 2 |\n", + "| 8 | 8 | very | 3 |\n", + "| 9 | 9 | much | 4 |\n", + "\n" + ], + "text/plain": [ + " A B DivA\n", + "1 1 I -4 \n", + "2 2 like -3 \n", + "3 3 to -2 \n", + "4 4 use -1 \n", + "5 5 Python 0 \n", + "6 6 and 1 \n", + "7 7 Pandas 2 \n", + "8 8 very 3 \n", + "9 9 much 4 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "id": "2be67ef7", + "metadata": {}, + "source": [ + "We are creating a series which calculates the length of string of A column then merge into existing dataframe" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "c67f2bd0", + "metadata": {}, + "outputs": [], + "source": [ + "df$LenB <- str_length(df$B)" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "cef214b2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 9 × 4
ABDivALenB
<int><chr><dbl><int>
11I -41
22like -34
33to -22
44use -13
55Python 06
66and 13
77Pandas 26
88very 34
99much 44
\n" + ], + "text/latex": [ + "A data.frame: 9 × 4\n", + "\\begin{tabular}{r|llll}\n", + " & A & B & DivA & LenB\\\\\n", + " & & & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I & -4 & 1\\\\\n", + "\t2 & 2 & like & -3 & 4\\\\\n", + "\t3 & 3 & to & -2 & 2\\\\\n", + "\t4 & 4 & use & -1 & 3\\\\\n", + "\t5 & 5 & Python & 0 & 6\\\\\n", + "\t6 & 6 & and & 1 & 3\\\\\n", + "\t7 & 7 & Pandas & 2 & 6\\\\\n", + "\t8 & 8 & very & 3 & 4\\\\\n", + "\t9 & 9 & much & 4 & 4\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 9 × 4\n", + "\n", + "| | A <int> | B <chr> | DivA <dbl> | LenB <int> |\n", + "|---|---|---|---|---|\n", + "| 1 | 1 | I | -4 | 1 |\n", + "| 2 | 2 | like | -3 | 4 |\n", + "| 3 | 3 | to | -2 | 2 |\n", + "| 4 | 4 | use | -1 | 3 |\n", + "| 5 | 5 | Python | 0 | 6 |\n", + "| 6 | 6 | and | 1 | 3 |\n", + "| 7 | 7 | Pandas | 2 | 6 |\n", + "| 8 | 8 | very | 3 | 4 |\n", + "| 9 | 9 | much | 4 | 4 |\n", + "\n" + ], + "text/plain": [ + " A B DivA LenB\n", + "1 1 I -4 1 \n", + "2 2 like -3 4 \n", + "3 3 to -2 2 \n", + "4 4 use -1 3 \n", + "5 5 Python 0 6 \n", + "6 6 and 1 3 \n", + "7 7 Pandas 2 6 \n", + "8 8 very 3 4 \n", + "9 9 much 4 4 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "id": "e37d50de", + "metadata": {}, + "source": [ + "Selecting rows based on numbers " + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "59fe5316", + "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 × 4
ABDivALenB
<int><chr><dbl><int>
11I -41
22like -34
33to -22
44use -13
55Python 06
\n" + ], + "text/latex": [ + "A data.frame: 5 × 4\n", + "\\begin{tabular}{r|llll}\n", + " & A & B & DivA & LenB\\\\\n", + " & & & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I & -4 & 1\\\\\n", + "\t2 & 2 & like & -3 & 4\\\\\n", + "\t3 & 3 & to & -2 & 2\\\\\n", + "\t4 & 4 & use & -1 & 3\\\\\n", + "\t5 & 5 & Python & 0 & 6\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 5 × 4\n", + "\n", + "| | A <int> | B <chr> | DivA <dbl> | LenB <int> |\n", + "|---|---|---|---|---|\n", + "| 1 | 1 | I | -4 | 1 |\n", + "| 2 | 2 | like | -3 | 4 |\n", + "| 3 | 3 | to | -2 | 2 |\n", + "| 4 | 4 | use | -1 | 3 |\n", + "| 5 | 5 | Python | 0 | 6 |\n", + "\n" + ], + "text/plain": [ + " A B DivA LenB\n", + "1 1 I -4 1 \n", + "2 2 like -3 4 \n", + "3 3 to -2 2 \n", + "4 4 use -1 3 \n", + "5 5 Python 0 6 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df[0:5,]" + ] + }, + { + "cell_type": "markdown", + "id": "6abec1b7", + "metadata": {}, + "source": [ + "***Grouping means which groups the multiple columns based on certain conditions and we will use summarise function to see the difference***\n", + "\n", + "Suppose that we want to compute the mean value of column A for each given number of LenB. Then we can group our DataFrame by LenB, and find mean name them as a" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "f944a949", + "metadata": {}, + "outputs": [], + "source": [ + "df1 = df %>% group_by(LenB) %>% summarise(a = mean(A))" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "8ffd39cd", + "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 tibble: 5 × 2
LenBa
<int><dbl>
11.000000
23.000000
35.000000
46.333333
66.000000
\n" + ], + "text/latex": [ + "A tibble: 5 × 2\n", + "\\begin{tabular}{ll}\n", + " LenB & a\\\\\n", + " & \\\\\n", + "\\hline\n", + "\t 1 & 1.000000\\\\\n", + "\t 2 & 3.000000\\\\\n", + "\t 3 & 5.000000\\\\\n", + "\t 4 & 6.333333\\\\\n", + "\t 6 & 6.000000\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A tibble: 5 × 2\n", + "\n", + "| LenB <int> | a <dbl> |\n", + "|---|---|\n", + "| 1 | 1.000000 |\n", + "| 2 | 3.000000 |\n", + "| 3 | 5.000000 |\n", + "| 4 | 6.333333 |\n", + "| 6 | 6.000000 |\n", + "\n" + ], + "text/plain": [ + " LenB a \n", + "1 1 1.000000\n", + "2 2 3.000000\n", + "3 3 5.000000\n", + "4 4 6.333333\n", + "5 6 6.000000" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df1" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "3b859950", + "metadata": {}, + "outputs": [], + "source": [ + "df2 = df %>% group_by(LenB) %>%\n", + "summarise(MEAN = mean(A),count =length(DivA))" + ] + }, + { + "cell_type": "markdown", + "id": "5d3f0287", + "metadata": {}, + "source": [ + "## Printing and Plotting\n", + " When We call head(df) it will print out dataframe in a tabular form.\n", + "\n", + "The first step of any data science project is data cleaning and visualization, thus it is important to visualize the dataset and extract some useful imformation." + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "69946dc7", + "metadata": {}, + "outputs": [], + "source": [ + "#dataset = read.csv(\"file name\")" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "4976f190", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 6 × 4
ABDivALenB
<int><chr><dbl><int>
11I -41
22like -34
33to -22
44use -13
55Python 06
66and 13
\n" + ], + "text/latex": [ + "A data.frame: 6 × 4\n", + "\\begin{tabular}{r|llll}\n", + " & A & B & DivA & LenB\\\\\n", + " & & & & \\\\\n", + "\\hline\n", + "\t1 & 1 & I & -4 & 1\\\\\n", + "\t2 & 2 & like & -3 & 4\\\\\n", + "\t3 & 3 & to & -2 & 2\\\\\n", + "\t4 & 4 & use & -1 & 3\\\\\n", + "\t5 & 5 & Python & 0 & 6\\\\\n", + "\t6 & 6 & and & 1 & 3\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 6 × 4\n", + "\n", + "| | A <int> | B <chr> | DivA <dbl> | LenB <int> |\n", + "|---|---|---|---|---|\n", + "| 1 | 1 | I | -4 | 1 |\n", + "| 2 | 2 | like | -3 | 4 |\n", + "| 3 | 3 | to | -2 | 2 |\n", + "| 4 | 4 | use | -1 | 3 |\n", + "| 5 | 5 | Python | 0 | 6 |\n", + "| 6 | 6 | and | 1 | 3 |\n", + "\n" + ], + "text/plain": [ + " A B DivA LenB\n", + "1 1 I -4 1 \n", + "2 2 like -3 4 \n", + "3 3 to -2 2 \n", + "4 4 use -1 3 \n", + "5 5 Python 0 6 \n", + "6 6 and 1 3 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "head(df)" + ] + }, + { + "cell_type": "markdown", + "id": "dcca35a8", + "metadata": {}, + "source": [ + "ggplot2 is a very good library as it simple to create complex plots from data in a data frame.\n", + "\n", + "It provides a more programmatic interface for specifying what variables to plot, how they are displayed, and general visual properties." + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "515c95b2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "plot without title" + ] + }, + "metadata": { + "image/png": { + "height": 360, + "width": 720 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "plot(df$A,type = 'o',xlab = \"no\",ylab = \"A\")" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "41b872c9", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABaAAAALQCAMAAABR+ye1AAAAM1BMVEUAAABNTU1oaGh8fHyM\njIyampqnp6eysrK9vb2+vr7Hx8fQ0NDZ2dnh4eHp6enw8PD////ojgWfAAAACXBIWXMAABJ0\nAAASdAHeZh94AAAb0klEQVR4nO3d7ZYUh5FF0WyarwFB9/s/7QAWAttIsoqKqkPk3j8wtpcU\nZ7Ky7sIsPD6eAUg67h0AwI8ZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBl\noAGiDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaIAo\nAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEGGiDKQANE\nGWiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhog\nykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMNEGWgAaIMNECUgQaIMtAA\nUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEG\niDLQAFEGGiDKQANEGWiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaGCF4+Zu8H/T/AmA\necf/3ZiBBvjfGGiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSB\nBogy0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMNEGWgAaIM\nNECUgQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBl\noAGiDDRAlIEGiDLQAFEGGiDKQANEGejvfHx1PLx5fn774nh4fc0ggEsY6G+eHo5P3r75/OPx\neNUkgH/OQH/z+vj06+bXD8erp+enLz8HuCcD/c3Dl7/wOJ6+/MPD1XoALmKgv/vrjm8/fv2H\nf/u3v3N5HdB33NyPMwz0Hx6+G+inv/4VtIGG1SLLGMm47qO98K/7+nvQr59+//n1TwC/hMgy\nRjKu+2gv/Ov+wZ/iMNCwWmQZIxnXfbSX/oX/+5+DNtCwWmQZIxnXfbQrTgD3E1nGSMZ1H+2K\nE8D9RJYxknHdR7viBHA/kWWMZFz30a44AdxPZBkjGdd9tCtOAPcTWcZIxnUf7YoTwP1EljGS\ncd1Hu+IEcD+RZYxkXPfRrjgB3E9kGSMZ1320K04A9xNZxkjGdR/tihPA/USWMZJx3Ue74gRw\nP5FljGRc99GuOAHcT2QZIxnXfbQrTgD3E1nGSMZ1H+2KE8D9RJYxknHdR7viBHA/kWWMZFz3\n0a44AdxPZBkjGdd9tCtOAPcTWcZIxnUf7YoTwP1EljGScd1Hu+IEcD+RZYxkXPfRrjgB3E9k\nGSMZ1320K04A9xNZxkjGdR/tihPA/USWMZJx3Ue74gRwP5FljGRc99GuOAHcT2QZIxnXfbQr\nTgD3E1nGSMZ1H+2KE8D9RJYxknHdR7viBHA/kWWMZFz30a44AdxPZBkjGdd9tCtOAPcTWcZI\nxnUf7YoTwP1EljGScd1Hu+IEcD+RZYxkXPfRrjgB3E9kGSMZ1320K04A9xNZxkjGdR/tihPA\n/USWMZJx3Ue74gRwP5FljGRc99GuOAHcT2QZIxnXfbQrTgD3E1nGSMZ1H+2KE8D9RJYxknHd\nR7viBHA/kWWMZFz30a44AdxPZBkjGdd9tCtOAPcTWcZIxnUf7YoTwP1EljGScd1Hu+IEcD+R\nZYxkXPfRrjgB3E9kGSMZ1320K04A9xNZxkjGdR/tihPA/USWMZJx3Ue74gRwP5FljGRc99Gu\nOAHcT2QZIxnXfbQrTgD3E1nGSMZ1H+2KE8D9RJYxknHdR7viBJzScXM/zmgsYyTjqnacgFOK\nTJKMMTtOwClFJknGmB0n4JQikyRjzI4TcEqRSZIxZscJOKXIJMkYs+MEnFJkkmSM2XECTiky\nSTLG7DgBpxSZJBljdpyAU4pMkowxO07AKUUmScaYHSfglCKTJGPMjhNwSpFJkjFmxwk4pcgk\nyRiz4wScUmSSZIzZcQJOKTJJMsbsOAGnFJkkGWN2nIBTikySjDE7TsApRSZJxpgdJ+CUIpMk\nY8yOE3BKkUmSMWbHCTilyCTJGLPjBJxSZJJkjNlxAk4pMkkyxuw4AacUmSQZY3acgFOKTJKM\nMTtOwClFJknGmB0n4JQikyRjzI4TcEqRSZIxZscJOKXIJMkYs+MEnFJkkmSM2XECTikySTLG\n7DgBpxSZJBljdpyAU4pMkowxO07AKUUmScaYHSfglCKTJGPMjhNwSpFJkjFmxwk4pcgkyRiz\n4wScUmSSZIzZcQJOKTJJMsbsOAGnFJkkGWN2nIBTikySjDE7TsApRSZJxpgdJ+CUIpMkY8yO\nE3BKkUmSMWbHCTilyCTJGLPjBJxSZJJkjNlxAk4pMkkyxuw4AacUmSQZY3acgFOKTJKMMTtO\nwClFJknGmItPPL1++PTjmxfH8fhu6ATwlyKTJGPMpSc+PhzH89OnHz57HDkB/LXIJMkYc+mJ\nV8fLp08/vPr4aatfHa8nTgB/LTJJMsZceuI4nn7/4fn56XiYOAH8tcgkyRhz+UB/+uHh+O6f\n/Me//Z3L6yDpuLk/6WhMkowxl/8Wx4fn5zeff/j8K+i//E1oA802lSmIdMgYc+mJD8fD6w/P\nLx8+LfT7F8f7iRNQVZmCSIeMMRefeP/w7T9+vZk5AVGVKYh0yBjzEyfevXrxeZ1fvvk4dgKS\nKlMQ6ZAxZscJuKnKFEQ6ZIzZcQJuqjIFkQ4ZY3acgJuqTEGkQ8aYHSfgpipTEOmQMWbHCbip\nyhREOmSM2XECbqoyBZEOGWN2nICbqkxBpEPGmB0n4KYqUxDpkDFmxwm4qcoURDpkjNlxAm6q\nMgWRDhljdpyAm6pMQaRDxpgdJ+CmKlMQ6ZAxZscJuKnKFEQ6ZIzZcQJuqjIFkQ4ZY3acgJuq\nTEGkQ8aYHSfgpipTEOmQMWbHCbipyhREOmSM2XECbqoyBZEOGWN2nICbqkxBpEPGmB0n4KYq\nUxDpkDFmxwm4qcoURDpkjNlxAm6qMgWRDhljdpyAm6pMQaRDxpgdJ+CmKlMQ6ZAxZscJuKnK\nFEQ6ZIzZcQJuqjIFkQ4ZY3acgJuqTEGkQ8aYHSfgpipTEOmQMWbHCbipyhREOmSM2XECbqoy\nBZEOGWN2nICbqkxBpEPGmB0n4KYqUxDpkDFmxwm4qcoURDpkjNlxAm6qMgWRDhljdpyAm6pM\nQaRDxpgdJ+CmKlMQ6ZAxZscJuKnKFEQ6ZIzZcQJuqjIFkQ4ZY3acgJuqTEGkQ8aYHSfgpipT\nEOmQMWbHCbipyhREOmSM2XECbqoyBZEOGWN2nICbqkxBpEPGmB0n4KYqUxDpkDFmxwm4qcoU\nRDpkjNlxAm6qMgWRDhljdpyAm6pMQaRDxpgdJ+CmKlMQ6ZAxZscJuKnKFEQ6ZIzZcQJuqjIF\nkQ4ZY3ac4CyOm/txRmQKIh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMjhOcReQ7GMmo\ndMgYs+MEZxH5DkYyKh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMjhOcReQ7GMmodMgY\ns+MEZxH5DkYyKh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMjhOcReQ7GMmodMgYs+ME\nZxH5DkYyKh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMjhOcReQ7GMmodMgYs+MEZxH5\nDkYyKh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMjhOcReQ7GMmodMgYs+MEZxH5DkYy\nKh0yxuw4wVlEvoORjEqHjDE7TnAWke9gJKPSIWPMj058eP0wfQIuEvkORjIqHTLG/NeJj29e\nHIeBpinyHYxkVDpkjPn3E0/vPq3z8fh+8AT8hMh3MJJR6ZAx5vsT7x6Pzz4OnoCfEvkORjIq\nHTLG/HHi/atP2/zw+sNx9aMGmquJfAcjGZUOGWO+nnj4vM6/ff4XDDRdke9gJKPSIWPM1xPH\n8frrT6ZOwE+LfAcjGZUOGWP8CppfSeQ7GMmodMgY85+/B/2bgSYs8h2MZFQ6ZIzxpzj4lUS+\ng5GMSoeMMT/6c9Av/TlooiLfwUhGpUPGGP9NQn4lke9gJKPSIWOM/18c/Eoi38FIRqVDxpgd\nJziLyHcwklHpkDFmxwnOIvIdjGRUOmSM2XGCs4h8ByMZlQ4ZY3ac4Cwi38FIRqVDxpgdJziL\nyHcwklHpkDFmxwnOIvIdjGRUOmSM2XGCs4h8ByMZlQ4ZY3ac4Cwi38FIRqVDxpgdJziLyHcw\nklHpkDFmxwnOIvIdjGRUOmSM2XGCs4h8ByMZlQ4ZY3ac4Cwi38FIRqVDxpgdJziLyHcwklHp\nkDFmxwnOIvIdjGRUOmSM+fkTf/u/kWWguZrIdzCSUemQMcZA8yuJfAcjGZUOGWMuPXH8u4kT\n8F8i38FIRqVDxphLT/z2YKC5vch3MJJR6ZAx5uITTy+Pxy//+98/XOf/eb35RRw39+OMxncw\nklHpkDHmJ068O453z34P+iQiL7+MYoeMMT9z4uPj8fLJQJ9D5OWXUeyQMebnTrw5Ht4b6FOI\nvPwyih0yxvzkiQ8v/v73mA30BpGXX0axQ8aYnz7xykCfQuTll1HskDFmxwnGRV5+GcUOGWN2\nnGBc5OWXUeyQMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAxZscJxkVefhnFDhljdpxgXOTll1Hs\nkDFmxwnGRV5+GcUOGWN2nGBc5OWXUeyQMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAxZscJxkVe\nfhnFDhljdpxgXOTll1HskDFmxwnGRV5+GcUOGWN2nGBc5OWXUeyQMWbHCcZFXn4ZxQ4ZY3ac\nYFzk5ZdR7JAxZscJxkVefhnFDhljdpxgXOTll1HskDFmxwnGRV5+GcUOGWN2nGBc5OWXUeyQ\nMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAxZscJxkVefhnFDhljdpxgXOTll1HskDFmxwnGRV5+\nGcUOGWN2nGBc5OWXUeyQMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAxZscJxkVefhnFDhljdpxg\nXOTll1HskDFmxwnGRV5+GcUOGWN2nGBc5OWXUeyQMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAx\nZscJxkVefhnFDhljdpxgXOTll1HskDFmxwnGRV5+GcUOGWN2nGBc5OWXUeyQMWbHCcZFXn4Z\nxQ4ZY3acYFzk5ZdR7JAxZscJxkVefhnFDhljdpxgXOTll1HskDFmxwnGRV5+GcUOGWN2nGBc\n5OWXUeyQMWbHCcZFXn4ZxQ4ZY3acYFzk5ZdR7JAxZscJxkVefhnFDhljdpxgXOTll1HskDFm\nxwnGRV5+GcUOGWN2nFjsuLk/6Wi8/DKKHTLG7DixWOWli3TIKHbIGLPjxGKVly7SIaPYIWPM\njhOLVV66SIeMYoeMMTtOLFZ56SIdMoodMsbsOLFY5aWLdMgodsgYs+PEYpWXLtIho9ghY8yO\nE4tVXrpIh4xih4wxO04sVnnpIh0yih0yxuw4sVjlpYt0yCh2yBiz48RilZcu0iGj2CFjzI4T\ni1VeukiHjGKHjDE7TixWeekiHTKKHTLG7DixWOWli3TIKHbIGLPjxGKVly7SIaPYIWPMjhOL\nVV66SIeMYoeMMTtOLFZ56SIdMoodMsbsOLFY5aWLdMgodsgYs+PEYpWXLtIho9ghY8yOE4tV\nXrpIh4xih4wxO04sVnnpIh0yih0yxuw4sVjlpYt0yCh2yBiz48RilZcu0iGj2CFjzI4Ti1Ve\nukiHjGKHjDE7TixWeekiHTKKHTLG7DixWOWli3TIKHbIGLPjxGKVly7SIaPYIWPMjhOLVV66\nSIeMYoeMMTtOLFZ56SIdMoodMsbsOLFY5aWLdMgodsgYs+PEYpWXLtIho9ghY8yOE4tVXrpI\nh4xih4wxO04sVnnpIh0yih0yxuw4sVjlpYt0yCh2yBiz48RilZcu0iGj2CFjzI4Ti1VeukiH\njGKHjDE7TixWeekiHTKKHTLG7DixWOWli3TIKHbIGLPjxGKVly7SIaPYIWPMjhOLVV66SIeM\nYoeMMTtOLFZ56SIdMoodMsbsOLFY5aWLdMgodsgYs+PEYpWXLtIho9ghY8yOE4tVXrpIh4xi\nh4wxO04sVnnpIh0yih0yxuw4sVjlpYt0yCh2yBiz48RilZcu0iGj2CFjzI4Ti1VeukiHjGKH\njDE7TixWeekiHTKKHTLG7DixWOWli3TIKHbIGLPjxGKVly7SIaPYIWPMxSeeXh3H4/vf/yZ/\n+Xcx0D+j8tJFOmQUO2SMufTE08Px2ct//U0M9JjKSxfpkFHskDHm0hOvj7efVvrtw+OXv4mB\nHlN56SIdMoodMsZceuLhX3/hx4cXHw30pMpLF+mQUeyQMebSE183+enx8UcDfXzvJ/Lu6Li5\nH2dEXrpIh4xih4wxl554cTx9/dnjzl9BRz7tSEalQ0axQ8aYS0+8PV79/rOPx6OBnvu0IxmV\nDhnFDhljLj7x+o9Vfv83v4thoH/m045kVDpkFDtkjLn8xIeXX3/28ZWBHvu0IxmVDhnFDhlj\ndpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmV\nDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyY\nEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnF\nDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0\nIxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhlj\ndpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmV\nDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyY\nEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnF\nDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0\nIxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhlj\ndpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmV\nDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyY\nEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnF\nDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljdpyYEPm0IxmVDhnFDhljgieOm/tx\nRuPTjmRUOmQUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLy\nmGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUU\nO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QU\nO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SM\nCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6I\nPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZ\nxQ4ZxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4Z\nxQ4ZY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4Z\nY4InIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4In\nIo9ZRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9Z\nRrFDRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFD\nRrFDxpjgichjllHskFHskDEmeCLymGUUO2QUO2SMCZ6IPGYZxQ4ZxQ4ZY4InIo9ZRrFDRrFD\nxpjLT/z25uXx2cvXv133ROQxyyh2yCh2yBhz6YmnF8c3j1c9EXnMMoodMoodMsZceuL18fDu\nw5effXz/cLy+5onIY5ZR7JBR7JAx5tITD8eHP37+4Xi45onIY5ZR7JBR7JAx5tITx/Fn/+T3\nf+U7//hvfWsy/jaj0iGj2CFjzA1+BQ3AJX7i96Dff/zys7/9PWgALnHxL9Ifv/uF/ounayYB\n8NlP/Dno11/+HPTDyzd/8+egAbjEDX6bG4BLGGiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpA\nA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEG\nGiDKQANEGWiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy\n0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMNEGWgAaIMNECU\ngQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlogCgDDRBloAGi\nDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMNEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaPY6jo8v\nj4c3X37+9sXx4u2de+AfMtDsdRwPxyefF/rx80+Ox3sXwT9ioNnr0yI/Pb89Xjw/vzsePjx/\neDje3TsJ/gkDzV7H8duXH5+fXx7vP/3svV9C82sx0Ox1HF9//NfPvv4D/CK8sOxloPnFeWHZ\ny0Dzi/PCste3gf76e9Av71wE/4iBZq9vA+1PcfBLMtDs9W2g/TlofkkGmr2+G+jntw/+m4T8\ncgw0QJSBBogy0ABRBhogykADRBlogCgDDRBloAGiDDRAlIEGiDLQAFEGGiDKQANEGWiAKAMN\nEGWgAaIMNECUgQaIMtAAUQYaIMpAA0QZaIAoAw0QZaABogw0QJSBBogy0ABRBhogykADRBlo\ngCgDDRD1/8/symIMSQHiAAAAAElFTkSuQmCC", + "text/plain": [ + "plot without title" + ] + }, + "metadata": { + "image/png": { + "height": 360, + "width": 720 + } + }, + "output_type": "display_data" + } + ], + "source": [ + "barplot(df$A, ylab = 'A',xlab = 'no')" + ] + } + ], + "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": "4.1.1" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}