デジタル推進課

KNIME・Excel Macro・Power Automateなど日々の業務で使用できる自動化ツールを中心に書き綴ります

KNIMEとは?

f:id:makkynm:20201219142046p:plain

 

 

はじめに

みなさん、KNIME(ナイム)ってご存知ですか?

会社が使っているという場合でないと知らないツールかもしれません。

ちなみに私は2017年ごろに出会いました。1週間で習得しないといけない状況で半ばあきらめていましたが、ちょうどその時 (id:sumtat)さんのブログ

非プログラマーのためのインフォマティクス入門。(仮)

が始まったころで、大変助かった記憶があります。何より分かりやすくて読みやすい!

その後は社内の人に教える機会が多くなったので、自分でも書いてみようと思いこのブログを作ってみました。

 

KNIMEとは?

KNIME*1とは、テーブルを使用して色々処理ができる*2ツールです。色々とは、テーブルの処理からデータのグラフ化、機械学習、データの送信のことです。プログラミング言語を処理の途中にいれることもできます。

 

色々できるでは分かりにくいので、絞ります。私のブログではCitizen Developerを念頭に置いているので、ETL(Extract(抽出)、Transform(変換)、Load(ロード)) ツール*3として使用します。

 

特徴は?

 特徴として下記の3つが挙げられます。

  1. タダ
  2. コーディングしなくてよい
  3. 共有しやすい
1 . タダ

オープンソースで無料です。

2. コーディングしなくてよい

これ大事ですよね。基本的にコーディングがいりません。ノードといわれるブロックをつなぎ合わせていくことによって、コーディングなしでデータを処理できるのが特徴です。

f:id:makkynm:20200126231728p:plain

KNIME ワークフロー例
3. 共有しやすい

こんなことありませんか?「昔の人が作ったAccessツールなんだけど、今や誰もロジックを知らず修正できない」「人が作ったプログラムが読めない」

コーディングルールの知らない人が何かツールを作るとよく上記のことが起こると思います。一方KNIMEは、「設定をできる範囲が限られているので、誰が見ても同じ解釈になる」ことから共有しやすいと思います。

多くの人が感覚的に分かるのが嬉しいポイントです。Accessでどのテーブルがどのテーブルにリンクしているかなど、解析するの大変だった記憶が、、

 

何ができるの?

いわゆるデータベース(テーブルの形をしたデータ)の処理です。

もしMicrosoft Accessを使ったことがあれば、やれることは「Microsoft Accessと同じ」です。Microsoft Excelで例えるならば、テーブルの機能の自動化です。

その他にも機械学習をはじめとしたデータ分析のツールとして使われることが多いです。

毎日こんな作業ないですか?

Microsoft Excelでテーブルを使って毎日フィルタリングやピボットなどを行い、別ファイルにして共有」

「複数のファイルをVLOOKUPでくっつけてレポートとして共有」

KNIMEはそんな作業を自動化するのが得意です。

 

最後に

このブログではKNIMEの入門から上級レベルまで紹介していこうと思います。KNIME初心者、プログラム初心者でも自動化ツールを難なく作れるようになるのが目標です!

ブログ、書く時間を確保するのって大変ですね、、

書こう書こうと思って早2週間、習慣づけない限り無理ですね。。。

 

 

 

 

余談

 難しそう、、ブログ書けない、、忙しいから、、

私が良く思ってしまうことです。軽くYesの気持ちで行きましょう!!

イエスマン "YES"は人生のパスワード (字幕版)

イエスマン "YES"は人生のパスワード (字幕版)

  • 発売日: 2013/11/26
  • メディア: Prime Video
 
イエスマン "YES"は人生のパスワード(吹替版)

イエスマン "YES"は人生のパスワード(吹替版)

  • 発売日: 2015/03/15
  • メディア: Prime Video
 

 

 

www.youtube.com

 

 

 

*1:公式サイトは下記(英語)です。 

www.knime.com

*2:正式には、KNIME Analytics Platformです。プラットフォームといわれるくらいですから、拡張機能(Extension)次第でデータの読み込みから、データの処理、データの可視化、機械学習、Reportingまで様々な事ができます。基本はコーディングなしで行えるというのがコンセプトですが、コーディング(Python, R, Java等)をすることも可能です。

紹介動画(英語)を参考に載せます。

KNIME Software: Creating and Productionizing Data Science

*3:最近覚えました。データベースを処理するツールの事です。データベースというと引けを感じるかもしれませんが、いわゆるExcelのテーブルのようなものです。