Web3時代のつよつよビジネスパーソンを目指すブログ

Web3という大きな波に会社員エンジニアはどう対峙すべきか。クリプト、NFT、DeFi、メタバース…多様な情報に触れ思考したことを発信します。どこにでもいる会社員だからこその、日々の気づき、ビジネスTipsも発信します。

データ分析においてエクセルが限界を迎える理由3つ

こんにちは。

 

今日は、データ分析において、エクセルが限界を迎える3つの理由を書きます。

 

(前提としては、マクロ関数の使用は無しです。)

 

結論としては、以下の3点です。

  • 手作業によるミスが発生しやすい
  • 異なるデータセットに対しての使いまわし(流用性)が低い
  • データ量に限界がある

 

もちろん優れたアプリケーションであることは間違いない

私もゴリゴリ使っています。

メリットとして

感覚的に操作できるGUIであること、

特にグラフもマウス操作で簡単に調整できること、

などなどあるのは確かです。

 

しかしながら、データ分析の前線では、限界を迎えることを、

シニアデータサイエンティストからご指導いただきました。

自分なりの解釈を加え、備忘録とします。

 

手作業によるミスが発生しやすい

ワークシート関数(SUMとかVLOOKUPなど)は、

誤操作で参照を間違えたり、

1行ずれていたりなど、うっかり操作ミスが起こりえます。

 

ミスが起こるのは,pythonも同様ではあるのですが、

何が違うのか。それは、一度作りこんだワークシート関数って、

作った以降、あまり目に触れないのでロジックのチェックがされないこと。

また、不用意にセルコピーして上書きしてしまったりで、

後から計算式に誤った変更を加えてしまう、可能性が高いと思うのです。

 

pythonの場合、ロジックはプログラムとして目に触れますし、

うっかりプログラムをコピペで上書きした!というのは、

セルの上書きに比べると、少ないのではと思います。

 

異なるデータセットに対しての使いまわし(流用性)が低い

ゴリゴリと分析のためワークシート関数を仕込んだのち、

「データに一部不備ありました~まるごとデータの差し替えお願いします!」

と言われたらどうなるか。

 

手作業での関数組み込みを、やり直しになりますね。

データの行数も変われば、選択範囲も変わってしまうし・・。

 

データセットが変更されたとき、追加データに対して同じロジックを

通したいときの、汎用性、流用性、再現性・・・こういった観点での

パワーは、エクセルには不足しています。

 

pythonで、あらかじめデータの行数であったり、カラムに(なるべく)

依存しないようなロジックを組んでおけば、

僅かな変更で、他のデータにも流用ができるわけですね。

 

データ量に限界がある

最後は、まああるあるですが、エクセルには扱える行数に

上限がありますね。
1,048,576 行か・・ 

まあ、割と十分ではという気もしてきます。

しかし、普通のPCでは、メモリ不足でもはや操作ができないように

なってしまうでしょう。

pythonでもローカルPCでJupyter Notebookを動かすと、

データ量によりメモリを食ってしまう問題は発生します。

 

ですがGoogle colaboratoryのように、サーバ上のメモリを使うSaaS

であれば、あまりメモリ不足までは気にせずに作業ができます。

 

さいごに

というわけで、

繰り返し行うような分析の場合は、最初からR,Pythonを使って始めるのが

得策でしょう。

一方、一回きりのデータ可視化であったり、最初にデータの感触をつかむために

エクセルを使うのは、有用と思います。

さくっと触れる敷居の低さと、短距離走のスピードを出すには強いといえます。

 

しかし、長距離走的に、長く、深く、繰り返し分析するようなタスクでは、

プログラム言語を使っていく方が、良いでしょう。

 

pythonをもっと手足のように操ってアウトプットできる人に

なっていこうと思います。