RでExcel風にインタラクティブにデータ編集するGUIパッケージ「DataEditR」

RでExcel風にインタラクティブにデータ編集するGUIパッケージ「DataEditR」

Excelのワークシートで、データセットを眺めたりインタラクティブに編集することに慣れている人は多いです。

そういう方にとって、RPythonなどの無味乾燥なGUIに物足りなさというか、を感じる方もいるかもしれません。

RExcel風にインタラクティブにデータを眺めたり、編集できないだろうかと言うことで、RのGUIパッケージ「DataEditR」をご紹介します。

DataEditRとは?

DataEditRは、データの表示、入力、フィルタリング、編集などをExcelライクにインタラクティブに行うことができます。

ちなみに、RStudioからAdd-inで使えるようになります。データセットをざっくり眺めるときに役立ちます。

詳細は、以下を参考にしてください。


https://dillonhammill.github.io/DataEditR/index.html

 

DataEditRのインストール

先ず、DataEditRをインストールしましょう。

以下、コードです。

install.packages("DataEditR", dependencies = TRUE)

 

サンプルデータ

今回利用するデータセットは、回帰問題でよく登場するみんな大好き「ボストン住宅価格(BostonHousing)」データセットです。

Rのライブラリー「mlbench」にあるサンプルデータです。ライブラリー「mlbench」をインストールし、サンプルデータを利用するときにロードする必要があります。

以下、データ項目です。

  • CRIM: 犯罪率
  • ZN: 広い家の割合(25,000平方フィートを超える区画に分類される住宅地の割合)
  • INDUS: 非小売業の割合
  • CHAS: 川と隣接(川に隣接している場合は1、そうでない場合は0)
  • NOX: NOx濃度(0.1ppm単位)
  • RM: 平均部屋数
  • AGE: 古い家の割合(1940年より前に建てられた持ち家の割合)
  • DIS: 主要施設への距離(5つあるボストン雇用センターまでの加重距離)
  • RAD: 主要高速道路アクセス指数
  • TAX: 固定資産税率(10,000ドル当たり)
  • PTRATIO: 生徒と先生の比率
  • B: 1000×(黒人割合- 0.63)の二乗
  • LSTAT: 低所得者人口の割合
  • MEDV:住宅価格の中央値(1000ドル単位)

 

DataEditRを使おう!

まず、必要なライブラリーを読み込みます。

以下、コードです。

# 必要パッケージのロード
library(DataEditR) #DataEditR
library(mlbench)   #サンプルデータ

 

次に、データセットを読み込みます。

以下、コードです。

# データセットの読み込み
data(BostonHousing)
dataset <- BostonHousing
str(dataset) #確認用

 

以下、実行結果です。

 

では、DataEditRを使ってみましょう。非常に簡単です。

以下、コードです。

# DataEditRの実行
dataset_new <- data_edit(dataset)

 

以下、実行結果です。

 

このExcelライクなGUI上で操作をします。

ちなみに、ブラウザ上に表示させ操作させたい場合には、コードは以下のようになります。

# DataEditRをブラウザで実行
data_edit(dataset,
          viewer = "browser")

 

DataEditRの操作例

セル編集

セルを選択し、直接データを入力します。

以下は、編集イメージです。

 

変数「rad」の2行目セルを選択編集し、値を「2」から「1」に変更しています。

 

新しい列(変数)の追加

挿入したい列の右もしくは左隣りのセルをどこか選択します。その後、「右クリック」をすると「列や行を追加したり削除したりするためのメニュー」が表示されます。

 

以下、列(変数)追加イメージです。

 

今回は、変数「medv」の1行目セルを選択右クリック、そして「Insert column right」(右側に列追加)を選択し、変数「medv」の右側に新しい列を追加しています。

 

列(変数)選択

以下のボタンをクリックし、必要な列(変数)を選択します。

 

以下、選択イメージです。

 

今回は、変数「crim」「indus」「nox」「age」「medv」を選択しています。

 

行選択(フィルター)

以下のボタンをクリックし、必要な行選択(フィルター)を選択します。

 

以下、選択イメージです。

 

今回は、変数「age」が「100以上」かつ変数「medv」が「10未満」を選択しました。

Rオブジェクト(データフレーム型)として保存するときは、以下のボタンをクリックします。

 

ハサミ」マークをクリック後、「Done」ボタンをクリックすると、このGUIは消えます。データセットは「dataset_new」に格納されています。

気になる方は確かめてみてください。

 

CSV保存

Rオブジェクト(データフレーム型)として保存するのではなく、CSVファイルとして結果を保存したいときは、以下のボタンをクリックします。

 

DataEditRから外部データを読み込む場合

単純に、データセットを指定せず実行します。

以下、コードです。

# DataEditRの実行(データセット空)
dataset_new <- data_edit()

 

Browse」から、外部にあるCSVファイルなどを選択しデータセットを読み込みます。

 

RStudio Add-in

DataEditRを読み込むと、RStudio上から使えるようになっています。

RStudio上で「Addins」から「Interactive Data Editor」を選びます。これで、DataEditRが起動します。

 

以下、実行イメージです。

 

データセットが空の状態(読み込まれていない状態)で立ちあがります。

実行中のRStudioに存在するデータセット(フレームワーク型)を指定します。例えば、Rにデフォルトで存在するデータセットなどです。今回は、Rのサンプルデータセットであるアヤメ(iris)のデータセットの読み込んでみました。

 

まとめ

どのようなデータセットかな、という感じでざっと眺めるときに便利です。

非常に簡単ですので、興味のある方は試してみてください。

この後、半自動EDA(探索的データ分析)用のパッケージを使い分析すると、データ理解が深まると思います。

Rでシンプル半自動EDA(探索的データ分析)