環境
- Ubuntu 22.04
- Ubuntu パッケージ版 R
- Ver.4.1.2
公式パッケージを調べる
2023/12/16現在、最新のリリースは4.3.2だそうです。
https://www.r-project.org/
R のインストールについては、 「cran」なるところにアクセスするのだそうだ。
しかしながら、今回は Ubuntu パッケージ版を使用していきます。
Ubunut パッケージ版をインストール
R の基本パッケージをインストールします。
$ sudo apt install r-base
以下の追加パッケージがインストールされます:
bzip2-doc gfortran gfortran-11 icu-devtools libblas-dev libbz2-dev
libgfortran-11-dev libicu-dev liblapack-dev libreadline-dev r-base-core
r-base-dev r-base-html r-cran-boot r-cran-class r-cran-cluster
r-cran-codetools r-cran-foreign r-cran-kernsmooth r-cran-lattice r-cran-mass
r-cran-matrix r-cran-mgcv r-cran-nlme r-cran-nnet r-cran-rpart
r-cran-spatial r-cran-survival r-doc-html r-recommended
提案パッケージ:
gfortran-multilib gfortran-doc gfortran-11-multilib gfortran-11-doc
libcoarrays-dev liblapack-doc icu-doc readline-doc elpa-ess r-doc-info
| r-doc-pdf r-mathlib texlive-fonts-extra texlive-latex-extra
以下のパッケージが新たにインストールされます:
bzip2-doc gfortran gfortran-11 icu-devtools libblas-dev libbz2-dev
libgfortran-11-dev libicu-dev liblapack-dev libreadline-dev r-base
r-base-core r-base-dev r-base-html r-cran-boot r-cran-class r-cran-cluster
r-cran-codetools r-cran-foreign r-cran-kernsmooth r-cran-lattice r-cran-mass
r-cran-matrix r-cran-mgcv r-cran-nlme r-cran-nnet r-cran-rpart
r-cran-spatial r-cran-survival r-doc-html r-recommended
アップグレード: 0 個、新規インストール: 31 個、削除: 0 個、保留: 80 個。
77.3 MB のアーカイブを取得する必要があります。
この操作後に追加で 184 MB のディスク容量が消費されます。
続行しますか? [Y/n]
結構ありますね
起動
$ R
とすると
R version 4.1.2 (2021-11-01) -- "Bird Hippie"
Copyright (C) 2021 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R は、自由なソフトウェアであり、「完全に無保証」です。
一定の条件に従えば、自由にこれを再配布することができます。
配布条件の詳細に関しては、'license()' あるいは 'licence()' と入力してください。
R は多くの貢献者による共同プロジェクトです。
詳しくは 'contributors()' と入力してください。
また、R や R のパッケージを出版物で引用する際の形式については
'citation()' と入力してください。
'demo()' と入力すればデモをみることができます。
'help()' とすればオンラインヘルプが出ます。
'help.start()' で HTML ブラウザによるヘルプがみられます。
'q()' と入力すれば R を終了します。
>
となりました。
バージョンは 4.1.2 です。公式でリリースされたのは 2021-11-01 頃のものです。
dplyr パッケージをインストールする
時間のデータを扱うのに以下のパッケージをインストールします。
$ sudo apt install dplyr
とすると
以下の追加パッケージがインストールされます:
fonts-font-awesome fonts-glyphicons-halflings fonts-mathjax
libcmark-gfm-extensions0.29.0.gfm.3 libcmark-gfm0.29.0.gfm.3 libjs-bootstrap
libjs-d3 libjs-es5-shim libjs-highlight.js libjs-jquery-datatables
libjs-jquery-datatables-extensions libjs-jquery-selectize.js libjs-json
libjs-mathjax libjs-microplugin.js libjs-modernizr libjs-prettify
libjs-sifter.js libjs-twitter-bootstrap-datepicker libnlopt0 libnode72
.
.
.
r-cran-webutils r-cran-withr r-cran-wk r-cran-wkutils r-cran-xfun r-cran-xml
r-cran-xml2 r-cran-xtable r-cran-xts r-cran-yaml r-cran-zoo
ttf-bitstream-vera
提案パッケージ:
fonts-mathjax-extras fonts-stix libjs-mathjax-doc npm texlive-xetex
pandoc-citeproc texlive-latex-extra context wkhtmltopdf librsvg2-bin groff
ghc python libjs-katex citation-style-language-styles r-cran-forcats
r-cran-ggbeeswarm r-cran-ggridges r-cran-roxygen2 r-cran-aer r-cran-bbmle
r-cran-car r-cran-cmprsk r-cran-coda r-cran-emmeans r-cran-epir r-cran-gam
r-cran-gee r-cran-geepack r-cran-glmnet r-cran-gmm r-cran-irlba
r-cran-lavaan r-cran-leaps r-cran-lmtest r-cran-lsmeans r-cran-metafor
r-cran-network r-cran-ordinal r-c
.
.
.
r-cran-vdiffr r-cran-viridis r-cran-viridislite r-cran-waldo r-cran-warp
r-cran-webutils r-cran-withr r-cran-wk r-cran-wkutils r-cran-xfun r-cran-xml
r-cran-xml2 r-cran-xtable r-cran-xts r-cran-yaml r-cran-zoo
ttf-bitstream-vera
アップグレード: 0 個、新規インストール: 306 個、削除: 0 個、保留: 80 個。
262 MB のアーカイブを取得する必要があります。
この操作後に追加で 624 MB のディスク容量が消費されます。
続行しますか? [Y/n]
うー、インストール処理を軽くしたいのでUbunutパッケージを使うことにしたのですが、これは仕方ないですね・・・・
R で csv から グラフを作る
元データ
このようなものです。
これを csv としてダウンロードすると以下のようになります。
,,,,,
測定者,@nanbuwks ,,,,
測定器,エステー エアカウンター,,,,
型番,校正番号 040008B0,,,,
測定方法,電源ON→5分静置→値読み取り,,,,
備考,一般家庭屋内 、2階、パソコンデスク上(床上110cm),,,,
,,,,,
,,,,,
,,,,,
場所,緯度経度,測定日時,測定値,単位,備考
東京都足立区,"35.80602760722601, 139.78767228418732",2023-08-24 10:15,0.05,μSV/h,
,,2023-08-12 15:12,0.05,,
,,2023-07-31 14:10,0.07,,
,,2023-07-30 15:58,0.05,,
,,2023-07-29 15:55,0.07,,
,,2023-07-28 18:25,0.09,,
,,2023-07-27 22:0,0.05,,
,,2023-07-21 11:55,0.1,,
,,2023-07-15 11:20,0.05,,
,,2023-07-14 22:5,0.1,,
,,2023-07-12 10:51,0.05,,
,,2023-07-11 23:24,0.09,,
.
.
.
まず、下準備として測定データ部分のみ取り出します。
tail +10 test3.csv | head -100 > test3-100.csv
これで、最新100件の測定データが得られました。
R にロード
まずは特に何も考えずに読み込みます。
> data <- read.csv("test3-100.csv")
> str(data)
'data.frame': 18 obs. of 6 variables:
$ 場所 : chr "東京都足立区" "" "" "" ...
$ 緯度経度: chr "35.80602760722601, 139.78767228418732" "" "" "" ...
$ 測定日時: chr "2023-08-24 10:15" "2023-08-12 15:12" "2023-07-31 14:10" "2023-07-30 15:58" ...
$ 測定値 : num 0.05 0.05 0.07 0.05 0.07 0.09 0.05 0.1 0.05 0.1 ...
$ 単位 : chr "μSV/h" "" "" "" ...
$ 備考 : logi NA NA NA NA NA NA ...
測定日時のデータ型が chr となっているので、時間型に変換します。
> data <- dplyr::mutate(data, 測定日時 = as.POSIXct(測定日時,tz="Asia/Tokyo"))
> str(data)
'data.frame': 18 obs. of 6 variables:
$ 場所 : chr "東京都足立区" "" "" "" ...
$ 緯度経度: chr "35.80602760722601, 139.78767228418732" "" "" "" ...
$ 測定日時: POSIXct, format: "2023-08-24 10:15:00" "2023-08-12 15:12:00" ...
$ 測定値 : num 0.05 0.05 0.07 0.05 0.07 0.09 0.05 0.1 0.05 0.1 ...
$ 単位 : chr "μSV/h" "" "" "" ...
$ 備考 : logi NA NA NA NA NA NA ...
上記の処理はこちらを参考にさせていただきました。
https://mom-neuroscience.com/r-datatype/
グラフ化する
> plot(data[[3]],data[[4]],xlab="Test",ylab="Test2",type="l")
としたら
となります。