Excelでもプログラミングでもないデータ加工と分析

Web上ですぐ使えるETLツール "HowData"を使ったデータ加工&分析を紹介しています

重複するデータの最初だけを抽出する

 下のように月データ(2月、3月、4月、5月、6月、7月)が重複しているとします。

この重複するデータからの重複を削除し、最初の行だけを抽出する場合を考えてみましょう。

データ加工の元データ
 
  A B C
1 日付
2 2月 2/15/84 183.203
3 2月 2/29/84 182.956
4 3月 3/14/84 184.846
5 3月 3/28/84 184.657
6 4月 4/11/84 185.748
7 4月 4/25/84 185.814
8 5月 5/9/84 186.032
9 5月 5/23/84 188.953
10 6月 6/6/84 186.829
11 6月 6/20/84 189.195
12 7月 7/4/84 189.137


下のようなデータが目的です。

データ加工の目的データ 
日付
2月 1984.02.15 183.203
3月 1984.03.14 184.846
4月 1984.04.11 185.748
5月 1984.05.09 186.032
6月 1984.06.06 186.829
7月 1984.07.04 189.137

 ExcelでCOUNTIF関数をつかいますが、ここでは処理がもっと簡単にできるインブラウザ型のデータ加工/分析サービス HowDataをつかってみます

 

howdata.io

f:id:howdata:20180410210047p:plain

1. データを取り込む (ファイル)

ノードへ入力されるデータ
 
  A B C
1 日付
2 2月 2/15/84 183.203
3 2月 2/29/84 182.956
4 3月 3/14/84 184.846
5 3月 3/28/84 184.657
6 4月 4/11/84 185.748
7 4月 4/25/84 185.814
8 5月 5/9/84 186.032
9 5月 5/23/84 188.953
10 6月 6/6/84 186.829
11 6月 6/20/84 189.195
12 7月 7/4/84 189.137
ノードから出力されるデータ(11)
 
日付
2月 2/15/84 183.203
2月 2/29/84 182.956
3月 3/14/84 184.846
3月 3/28/84 184.657
4月 4/11/84 185.748
4月 4/25/84 185.814
5月 5/9/84 186.032
5月 5/23/84 188.953
6月 6/6/84 186.829
6月 6/20/84 189.195
7月 7/4/84 189.137
1.ファイルノードを配置する
ノードパネルからファイルノーをクリックして選択します。クリック後、フローシート上で配置したい場所にカーソルを合わせ、再びクリックします
2.ノード編集画面を開く
ノードをクリックすると、選択パネルが表示されます、編集するをクリックすると編集画面が表示されます

3.ファイルを選択する
ファイル選択フォームからsampleData_05.xlsxを選択します
4.ワークシートを選択する
sampleData_05.xlsxに含まれるワークシートSheet1チェックボックスを選択します
5.列名となるデータ範囲を指定する
A1~C1の範囲をカーソルで指定後、[列名の範囲にする]ボタンをクリックします
6.編集内容を保存する
[保存して閉じる]ボタンをクリックし、ノード編集を終了します

2. 列を変更する (列変更)

 

ノードへ入力されるデータ(11)
 
日付
2月 2/15/84 183.203
2月 2/29/84 182.956
3月 3/14/84 184.846
3月 3/28/84 184.657
4月 4/11/84 185.748
4月 4/25/84 185.814
5月 5/9/84 186.032
5月 5/23/84 188.953
6月 6/6/84 186.829
6月 6/20/84 189.195
7月 7/4/84 189.137
ノードから出力されるデータ(11)
 
日付
2月 1984.02.15 183.203
2月 1984.02.29 182.956
3月 1984.03.14 184.846
3月 1984.03.28 184.657
4月 1984.04.11 185.748
4月 1984.04.25 185.814
5月 1984.05.09 186.032
5月 1984.05.23 188.953
6月 1984.06.06 186.829
6月 1984.06.20 189.195
7月 1984.07.04 189.137
1.列変更ノードを配置する
ノードパネルから列変更ノードをクリックして選択します。クリック後、フローシート上で配置したい場所にカーソルを合わせ、再びクリックします
2.ノードを接続する
データを処理する順番にノードを接続する必要がありますが、接続方法には2つあります

3.ノード編集画面を開く
ノードをクリックすると、選択パネルが表示されます、編集するをクリックすると編集画面が表示されます

4.列のデータ型を変更する
日付のデータ型をtextからdateに変更します,同様にのデータ型をtextからfloatに変更します
5.編集内容を保存する
[保存して閉じる]ボタンをクリックし、ノード編集を終了します

3. 窓関数を使う (窓関数)

 

ノードへ入力されるデータ(11)
 
日付
2月 1984.02.15 183.203
2月 1984.02.29 182.956
3月 1984.03.14 184.846
3月 1984.03.28 184.657
4月 1984.04.11 185.748
4月 1984.04.25 185.814
5月 1984.05.09 186.032
5月 1984.05.23 188.953
6月 1984.06.06 186.829
6月 1984.06.20 189.195
7月 1984.07.04 189.137
ノードから出力されるデータ(11)
 
日付 __row_number
2月 1984.02.15 183.203 0
2月 1984.02.29 182.956 1
3月 1984.03.14 184.846 0
3月 1984.03.28 184.657 1
4月 1984.04.11 185.748 0
4月 1984.04.25 185.814 1
5月 1984.05.09 186.032 0
5月 1984.05.23 188.953 1
6月 1984.06.06 186.829 0
6月 1984.06.20 189.195 1
7月 1984.07.04 189.137 0
1.窓関数ノードを配置する
ノードパネルから窓関数ノードをクリックして選択します。クリック後、フローシート上で配置したい場所にカーソルを合わせ、再びクリックします
2.ノードを接続する
データを処理する順番にノードを接続する必要がありますが、接続方法には2つあります

3.編集画面を開く
ノードをクリックすると、選択パネルが表示されます、編集するをクリックすると編集画面が表示されます

4.窓関数の領域を決める列を選択する
を窓関数の適用する領域を決める列を選択します
5.窓関数の領域内での順番を決める列と並べ替え方法を決定する
日付 (昇順) で領域内を並べ換えに使う列を選択します
6.領域に対して適用する関数を決定する
連番を付けるを選択する。
7.編集内容を保存する
[保存して閉じる]ボタンをクリックし、ノード編集を終了します

4. 条件抽出をする (条件抽出)

 

ノードへ入力されるデータ(11)
 
日付 __row_number
2月 1984.02.15 183.203 0
2月 1984.02.29 182.956 1
3月 1984.03.14 184.846 0
3月 1984.03.28 184.657 1
4月 1984.04.11 185.748 0
4月 1984.04.25 185.814 1
5月 1984.05.09 186.032 0
5月 1984.05.23 188.953 1
6月 1984.06.06 186.829 0
6月 1984.06.20 189.195 1
7月 1984.07.04 189.137 0
ノードから出力されるデータ(6)
 
日付 __row_number
2月 1984.02.15 183.203 0
3月 1984.03.14 184.846 0
4月 1984.04.11 185.748 0
5月 1984.05.09 186.032 0
6月 1984.06.06 186.829 0
7月 1984.07.04 189.137 0
1.条件抽出ノードを配置する
ノードパネルから条件抽出ノードをクリックして選択します。クリック後、フローシート上で配置したい場所にカーソルを合わせ、再びクリックします
2.ノードを接続する
データを処理する順番にノードを接続する必要がありますが、接続方法には2つあります

3.ノード編集画面を開く
ノードをクリックすると、選択パネルが表示されます、編集するをクリックすると編集画面が表示されます

4.指定した値だけを抽出
__row_numberの全体のチェックボックスを外し、全ての値を削除した上で、0をチェックし、残る値を指定します
5.編集内容を保存する
[保存して閉じる]ボタンをクリックし、ノード編集を終了します

5. 列を変更する (列変更)

 

ノードへ入力されるデータ(6)
 
日付 __row_number
2月 1984.02.15 183.203 0
3月 1984.03.14 184.846 0
4月 1984.04.11 185.748 0
5月 1984.05.09 186.032 0
6月 1984.06.06 186.829 0
7月 1984.07.04 189.137 0
ノードから出力されるデータ(6)
 
日付
2月 1984.02.15 183.203
3月 1984.03.14 184.846
4月 1984.04.11 185.748
5月 1984.05.09 186.032
6月 1984.06.06 186.829
7月 1984.07.04 189.137
1.列変更ノードを配置する
ノードパネルから列変更ノードをクリックして選択します。クリック後、フローシート上で配置したい場所にカーソルを合わせ、再びクリックします
2.ノードを接続する
データを処理する順番にノードを接続する必要がありますが、接続方法には2つあります

3.ノード編集画面を開く
ノードをクリックすると、選択パネルが表示されます、編集するをクリックすると編集画面が表示されます

4.列を削除する
__row_numberのフィルターボタンをクリックして、列を削除します
5.編集内容を保存する
[保存して閉じる]ボタンをクリックし、ノード編集を終了します