近年、PythonとData(データ)を組み合わせた「PyData」と呼ばれる領域に注目が集まっています。PyDataでは、データ分析、数値計算、画像処理、自然言語処理など、データをさまざまな方法で扱って活用していきます。
PyDataはPythonとDataを組み合わせた造語です。「PyData」は、狭義にはPyDataコミュニティを指します。また、プログラミング言語 Pythonで実装されたデータ分析関連パッケージやツールの総称としても用いられます。データ分析を行うためのプログラミング言語としてPythonが広まった理由の1つに、データ分析関連の便利なパッケージが豊富に揃っていることが挙げられます。科学技術計算を行うSciPy、機械学習のツールキットscikit-learn、自然言語処理を取り扱うNLTKなどがその一例です。
PyDataについて語るのであれば、はずすことのできない注目すべきできごとが2015年9月に起こりました。Googleが深層学習向けライブラリ「TensorFlow(テンソルフロー)」をオープンソースソフトウェアとしてリリースしたのです。その使い勝手もさることながら、Googleの知名度もあいまって、TensorFlowは大いに注目を集めました。TensorFlowのコアはC++で記述されていますが、Pythonインターフェイスが提供されており、結果的にPythonが改めて脚光を浴びるかたちとなりました。
TensorFlow
Pythonはデータ分析や統計といったデータサイエンスに特化しているように思われるかもしれません。しかし、あくまでもPythonは汎用プログラミング言語であり、Webアプリケーションの開発も得意としています。Pythonなら、数値計算や機械学習によって得た結果をWebサービスとして提供するところまでを、1つのプログラミング言語で行えます。そうした汎用性の高さも、Pythonの魅力の1つと言えます。
「Pythonエンジニア ファーストブック」では、Pythonによる開発を業務として行いたい方を対象に、Pythonの歴史や文法、開発環境から、ここでとりあげたPyDataやWebスクレイピング、そして人気の定番フレームワークDjangoを使ったWebアプリケーション開発などまで、まず知っておきたいことをわかりやすく解説しています。