R Notebook は、R Markdown の一つの形式で、コードを実行すると、その下に実行結果が現れます。

コード・チャンクは、ハイライトされています。そのコード・チャンクは、 Run ボタンを押すか、コード・チャンクの右上にある、右を向いた三角形をおすか、 Ctrl+Shift+Enter (Win) または Cmd+Shift+Enter (Mac) のキーで実行できます。

plot(cars)

str(iris)
'data.frame':   150 obs. of  5 variables:
 $ Sepal.Length: num  5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
 $ Sepal.Width : num  3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
 $ Petal.Length: num  1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
 $ Petal.Width : num  0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
 $ Species     : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
summary(iris)
  Sepal.Length    Sepal.Width     Petal.Length    Petal.Width          Species  
 Min.   :4.300   Min.   :2.000   Min.   :1.000   Min.   :0.100   setosa    :50  
 1st Qu.:5.100   1st Qu.:2.800   1st Qu.:1.600   1st Qu.:0.300   versicolor:50  
 Median :5.800   Median :3.000   Median :4.350   Median :1.300   virginica :50  
 Mean   :5.843   Mean   :3.057   Mean   :3.758   Mean   :1.199                  
 3rd Qu.:6.400   3rd Qu.:3.300   3rd Qu.:5.100   3rd Qu.:1.800                  
 Max.   :7.900   Max.   :4.400   Max.   :6.900   Max.   :2.500                  

あらたにコード・チャンクを挿入するときは、ツール・バーの Insert Chunk ボタンを押すか、または、 Ctrl+Option+I (Win) or Cmd+Option+I (Mac) でも可能です。

ノートブックを保存すると、コードを含む HTML ファイルが作成されます。プレビュー(Preview )ボタンまたは、 Ctrl+Shift+K (Win) または Cmd+Shift+K (Mac) でも可能です。

Knit で他の形式の出力をするときは、最初から一つ一つコード・チャンクを実行して、その結果が出力されますが、R Notebook の、プレビューは、実際にコード・チャンクに表示されているものだけが、含まれます。したがって、たとえば、エラーがあるコード・チャンクも、そのまま表示されます。Knit で他の形式の出力をするときは、エラーがあると、出力されず、途中で停止します。

head(iris)

一つの数値ベクトルに対して、その散らばりかたは、ヒストグラムでみます。

hist(iris$Sepal.Length)

幾つに分割するかは breaks で指定します。

hist(iris$Sepal.Length, breaks=15)

二つの数値ベクトルを指定すると、散布図が描けます。

plot(iris$Sepal.Length, iris$Sepal.Width)

下は、どんな散布図かわかりますか。

plot(df_iris)

下のコードは、各列の相関係数(corelation)を計算するものですが、第5列目は、数値ではないので、エラーとなります。

cor(iris)
Error in cor(iris) : 'x' must be numeric

したコードは、最初の四列だけの相関係数を求めています。

cor(iris[,1:4])
             Sepal.Length Sepal.Width Petal.Length Petal.Width
Sepal.Length    1.0000000  -0.1175698    0.8717538   0.8179411
Sepal.Width    -0.1175698   1.0000000   -0.4284401  -0.3661259
Petal.Length    0.8717538  -0.4284401    1.0000000   0.9628654
Petal.Width     0.8179411  -0.3661259    0.9628654   1.0000000

練習問題

datasets には、mtcars というデータがありますが、下に、新しく、コード・チャンクを挿入して、最初の6行、データ構造(str())、デーが概要を調べてください。Help を使ってみるのも良いですよ。ヒストグラムや、散布図も描けますか。

スクリプト(R Script)の実行例

coronavirus <- read.csv("https://github.com/RamiKrispin/coronavirus/raw/master/csv/coronavirus.csv")
head(coronavirus)
coronavirus$date <- as.Date(coronavirus$date)
COUNTRY <- "Japan"
df <- coronavirus[coronavirus$country == COUNTRY,]
df_confirmed <- df[df$type == "confirmed",]
df_death <- df[df$type == "death",]
plot(df_confirmed$date, df_confirmed$cases, type = "h")

plot(df_death$date, df_death$cases, type = "h")

LS0tCnRpdGxlOiAiUiBOb3RlYm9vayDjga7ooajpoYwiCmF1dGhvcjogIuWtpuexjeeVquWPt+OAgOawj+WQjSIKZGF0ZTogImByIFN5cy5EYXRlKClgIgpvdXRwdXQ6CiAgaHRtbF9ub3RlYm9vazogZGVmYXVsdAotLS0KClIgTm90ZWJvb2sg44Gv44CBW1IgTWFya2Rvd25dKGh0dHA6Ly9ybWFya2Rvd24ucnN0dWRpby5jb20pIOOBruS4gOOBpOOBruW9ouW8j+OBp+OAgeOCs+ODvOODieOCkuWun+ihjOOBmeOCi+OBqOOAgeOBneOBruS4i+OBq+Wun+ihjOe1kOaenOOBjOePvuOCjOOBvuOBmeOAggoK44Kz44O844OJ44O744OB44Oj44Oz44Kv44Gv44CB44OP44Kk44Op44Kk44OI44GV44KM44Gm44GE44G+44GZ44CC44Gd44Gu44Kz44O844OJ44O744OB44Oj44Oz44Kv44Gv44CBICpSdW4qIOODnOOCv+ODs+OCkuaKvOOBmeOBi+OAgeOCs+ODvOODieODu+ODgeODo+ODs+OCr+OBruWPs+S4iuOBq+OBguOCi+OAgeWPs+OCkuWQkeOBhOOBn+S4ieinkuW9ouOCkuOBiuOBmeOBi+OAgSAqQ3RybCtTaGlmdCtFbnRlciogKFdpbikg44G+44Gf44GvICpDbWQrU2hpZnQrRW50ZXIqIChNYWMpIOOBruOCreODvOOBp+Wun+ihjOOBp+OBjeOBvuOBmeOAggoKYGBge3J9CnBsb3QoY2FycykKYGBgCmBgYHtyfQpzdHIoaXJpcykKYGBgCmBgYHtyfQpzdW1tYXJ5KGlyaXMpCmBgYAoK44GC44KJ44Gf44Gr44Kz44O844OJ44O744OB44Oj44Oz44Kv44KS5oy/5YWl44GZ44KL44Go44GN44Gv44CB44OE44O844Or44O744OQ44O844GuICpJbnNlcnQgQ2h1bmsqIOODnOOCv+ODs+OCkuaKvOOBmeOBi+OAgeOBvuOBn+OBr+OAgSAqQ3RybCtPcHRpb24rSSogKFdpbikgb3IgKkNtZCtPcHRpb24rSSogKE1hYykg44Gn44KC5Y+v6IO944Gn44GZ44CCCgrjg47jg7zjg4jjg5bjg4Pjgq/jgpLkv53lrZjjgZnjgovjgajjgIHjgrPjg7zjg4njgpLlkKvjgoAgSFRNTCDjg5XjgqHjgqTjg6vjgYzkvZzmiJDjgZXjgozjgb7jgZnjgILjg5fjg6zjg5Pjg6Xjg7zvvIgqUHJldmlldyog77yJ44Oc44K/44Oz44G+44Gf44Gv44CBICAqQ3RybCtTaGlmdCtLKiAoV2luKSDjgb7jgZ/jga8gKkNtZCtTaGlmdCtLKiAoTWFjKSDjgafjgoLlj6/og73jgafjgZnjgIIKCipLbml0KiDjgafku5bjga7lvaLlvI/jga7lh7rlipvjgpLjgZnjgovjgajjgY3jga/jgIHmnIDliJ3jgYvjgonkuIDjgaTkuIDjgaTjgrPjg7zjg4njg7vjg4Hjg6Pjg7Pjgq/jgpLlrp/ooYzjgZfjgabjgIHjgZ3jga7ntZDmnpzjgYzlh7rlipvjgZXjgozjgb7jgZnjgYzjgIFSIE5vdGVib29rIOOBruOAgeODl+ODrOODk+ODpeODvOOBr+OAgeWun+mam+OBq+OCs+ODvOODieODu+ODgeODo+ODs+OCr+OBq+ihqOekuuOBleOCjOOBpuOBhOOCi+OCguOBruOBoOOBkeOBjOOAgeWQq+OBvuOCjOOBvuOBmeOAguOBl+OBn+OBjOOBo+OBpuOAgeOBn+OBqOOBiOOBsOOAgeOCqOODqeODvOOBjOOBguOCi+OCs+ODvOODieODu+ODgeODo+ODs+OCr+OCguOAgeOBneOBruOBvuOBvuihqOekuuOBleOCjOOBvuOBmeOAgipLbml0KiDjgafku5bjga7lvaLlvI/jga7lh7rlipvjgpLjgZnjgovjgajjgY3jga/jgIHjgqjjg6njg7zjgYzjgYLjgovjgajjgIHlh7rlipvjgZXjgozjgZrjgIHpgJTkuK3jgaflgZzmraLjgZfjgb7jgZnjgIIKCmBgYHtyfQpoZWFkKGlyaXMpCmBgYAoK5LiA44Gk44Gu5pWw5YCk44OZ44Kv44OI44Or44Gr5a++44GX44Gm44CB44Gd44Gu5pWj44KJ44Gw44KK44GL44Gf44Gv44CB44OS44K544OI44Kw44Op44Og44Gn44G/44G+44GZ44CCCgpgYGB7cn0KaGlzdChpcmlzJFNlcGFsLkxlbmd0aCkKYGBgCgrlub7jgaTjgavliIblibLjgZnjgovjgYvjga8gYGJyZWFrc2Ag44Gn5oyH5a6a44GX44G+44GZ44CCCgpgYGB7cn0KaGlzdChpcmlzJFNlcGFsLkxlbmd0aCwgYnJlYWtzPTE1KQpgYGAKCuS6jOOBpOOBruaVsOWApOODmeOCr+ODiOODq+OCkuaMh+WumuOBmeOCi+OBqOOAgeaVo+W4g+Wbs+OBjOaPj+OBkeOBvuOBmeOAggoKYGBge3J9CnBsb3QoaXJpcyRTZXBhbC5MZW5ndGgsIGlyaXMkU2VwYWwuV2lkdGgpCmBgYAoK5LiL44Gv44CB44Gp44KT44Gq5pWj5biD5Zuz44GL44KP44GL44KK44G+44GZ44GL44CCCgpgYGB7cn0KcGxvdChpcmlzKQpgYGAKCuS4i+OBruOCs+ODvOODieOBr+OAgeWQhOWIl+OBruebuOmWouS/guaVsO+8iGNvcmVsYXRpb27vvInjgpLoqIjnrpfjgZnjgovjgoLjga7jgafjgZnjgYzjgIHnrKw15YiX55uu44Gv44CB5pWw5YCk44Gn44Gv44Gq44GE44Gu44Gn44CB44Ko44Op44O844Go44Gq44KK44G+44GZ44CCCgpgYGB7cn0KY29yKGlyaXMpCmBgYAoK44GX44Gf44Kz44O844OJ44Gv44CB5pyA5Yid44Gu5Zub5YiX44Gg44GR44Gu55u46Zai5L+C5pWw44KS5rGC44KB44Gm44GE44G+44GZ44CCCgpgYGB7cn0KY29yKGlyaXNbLDE6NF0pCmBgYAoKIyMg57e057+S5ZWP6aGMCgpgZGF0YXNldHNgIOOBq+OBr+OAgWBtdGNhcnNgIOOBqOOBhOOBhuODh+ODvOOCv+OBjOOBguOCiuOBvuOBmeOBjOOAgeS4i+OBq+OAgeaWsOOBl+OBj+OAgeOCs+ODvOODieODu+ODgeODo+ODs+OCr+OCkuaMv+WFpeOBl+OBpuOAgeacgOWIneOBru+8luihjOOAgeODh+ODvOOCv+ani+mAoO+8iHN0cigp77yJ44CB44OH44O844GM5qaC6KaB44KS6Kq/44G544Gm44GP44Gg44GV44GE44CCSGVscCDjgpLkvb/jgaPjgabjgb/jgovjga7jgoLoia/jgYTjgafjgZnjgojjgILjg5Ljgrnjg4jjgrDjg6njg6DjgoTjgIHmlaPluIPlm7PjgoLmj4/jgZHjgb7jgZnjgYvjgIIKCgojIyDjgrnjgq/jg6rjg5fjg4jvvIhSIFNjcmlwdO+8ieOBruWun+ihjOS+iwoKYGBge3J9CmNvcm9uYXZpcnVzIDwtIHJlYWQuY3N2KCJodHRwczovL2dpdGh1Yi5jb20vUmFtaUtyaXNwaW4vY29yb25hdmlydXMvcmF3L21hc3Rlci9jc3YvY29yb25hdmlydXMuY3N2IikKaGVhZChjb3JvbmF2aXJ1cykKYGBgCgoKYGBge3J9CmNvcm9uYXZpcnVzJGRhdGUgPC0gYXMuRGF0ZShjb3JvbmF2aXJ1cyRkYXRlKQpDT1VOVFJZIDwtICJKYXBhbiIKZGYgPC0gY29yb25hdmlydXNbY29yb25hdmlydXMkY291bnRyeSA9PSBDT1VOVFJZLF0KZGZfY29uZmlybWVkIDwtIGRmW2RmJHR5cGUgPT0gImNvbmZpcm1lZCIsXQpkZl9kZWF0aCA8LSBkZltkZiR0eXBlID09ICJkZWF0aCIsXQpwbG90KGRmX2NvbmZpcm1lZCRkYXRlLCBkZl9jb25maXJtZWQkY2FzZXMsIHR5cGUgPSAiaCIpCnBsb3QoZGZfZGVhdGgkZGF0ZSwgZGZfZGVhdGgkY2FzZXMsIHR5cGUgPSAiaCIpCmBgYAoKCg==