今回はDXを推進する企業が増えている中で、企業のDX推進担当が避けられない「データを扱う」ということの基本的な内容をお話ししていきます。特に今回はデータを扱う上で基本中の基本となりますが、「データとは何か?」を説明していきます。
実際に、筆者自身、多くのDX推進のプロジェクトにも関わらせてもらいましたが、DXを推進する上で企業側で抱えている負としては、「そもそもDX推進する担当者が正直データがあまりわからない」、「何が出来るかそもそもわからない」というものかと思います。そして、その負により、多くのDX推進する担当者は、DXを過大評価し、出来ないことでも出来る魔法の杖だと認識してしているケースさえ多いと思います。特にDXツールの導入コンサルの方々には、これはかなり共感して頂ける部分も多いかなと思います!笑
そこで、今回の「データとは何か?」という問いはデータやシステムがあんまりわからない初心者に対して、まずはデータをイメージしてもらうためのコンテンツとして準備しましたので、是非見てみてください。
目次
そもそもデータとは?
皆さんも色んな場面で「データ」というキーワードを聞いたことがあると思います。それこそ、学生の皆さんや社会人の皆さんであれば、実験データや気象データ、統計データ等の多くのデータに触れてきたのではないでしょうか。ただ、次のような疑問を投げかけた時に皆さんはどのようなことを思い浮かべるでしょうか?
「そもそもデータとは?」
この回答が明確にある人も意外と少ない気がしますが、データと言われたら一般定義ではないかもしれませんが、次のようなものを思い浮かべるようにすると良いと思います。
データとは、キー(key)と値(value)により作られるものであり、
具体的には速度velocity=25 [m/s]というものがあった場合の
velocityがkey、25がvalueというようなものである
この定義に基づくと項目名と値があるようなものも全て、データのイメージになります。上記に挙げたvelocity=25 [m/s]以外にも以下のようなものもデータとしてイメージ出来るになってもらいたいと思います。
例1-1:json形式の速度データ
var velocity = { v_x : 3, v_y : 4, v_z : 0 }
例1-2:表形式の速度データ
速度x | 速度y | 速度z |
---|---|---|
3 | 4 | 0 |
上に挙げた2つの例はデータを扱う上で、多くのマーケターやエンジニアが触れるデータになると思います。少し脱線しますが、多くのログと言われるデータは例1-1のようなjson形式(jsonはJavaScript Object Notationの略で、多くの言語でも利用されるデータフォーマットです。)でやり取りされることが多く、システム側で例1-2のような表形式のデータ(データベースでも基本的にはこの形で表されます。)に変換されます。そして、データと言われれば、例1-2のような表形式の方が多くの人にとって理解がしやすい形式かと思いますが、「速度x」、「速度y」、「速度z」は項目名と言われ、先ほど挙げたデータの定義の中ではkeyに該当し、"3"、"4"、"0"という値がvalueに該当するということを覚えておくと良いと思います。一方で、例1-1で挙げたものの場合は、「v_x」、「v_y」、「v_z」がkey、"3"、"4"、"0"という値がvalueに該当します。最初は1行だけのデータ(余談ですが、データベースの用語では、行のことを「レコード」というため、1レコードのデータとも呼びます。また、列に関しては、「カラム」とも言います。)を例に挙げましたが、生徒名簿のような複数のデータの場合には、以下のように表現されることもイメージとして覚えておいてください。
例2-1:json形式の生徒情報データ
var student = [ { name : '田中', age : 17, sex : '男' },{ name : '佐藤', age : 18, sex : '女' },{ name : '加藤', age : 17, sex : '男' } ]
例2-2:表形式の生徒情報
名前 | 年齢 | 性別 |
---|---|---|
田中 | 17 | 男 |
佐藤 | 18 | 女 |
加藤 | 17 | 男 |
例2であげた生徒情報の場合のように、複数のデータになる場合にはjson形式よりもExcelなどでも利用される表形式の方が見やすいかと思いますが、webサイト上やAPIなどで取得できる情報にはjson形式の方が多く、分析などで利用する場合は表形式で扱われることが多いということも覚えておくと良いと思います。
さいごに
今回は短いですが、データとはそもそもどんなものかというイメージをつけてもらうことが目的だったため、上に挙げたような例を皆さんの中でしっかりとイメージしてもらえれば良いと思います。そして、次回以降では、今回挙げたデータを扱うためにはどのようなことが必要となるのかということをSQLなどの言語を実際に利用して、お話を出来ればと思ってます!