Pythonによるデータ分析・機械学習ブログ

Pythonによるデータの前処理・グラフ化、機械学習、統計解析、画像処理、Webスクレイピング、自然言語処理の基礎について紹介していきます。

MENU

データ分析

Shapelyを用いた図形の計算(幾何学的演算):点、線分、多角形の計算

はじめに 図形の計算には一般的にGEOS(Geometry Engine, Open Sourc)のライブラリ関数を使用します。GEOSのPythonパッケージの一つがShapleです。Shapely は地理情報システム (GIS) でよく用いられていますが、他の目的でも使用されています。Shapelyでは…

【第26回】機械学習EDA:AutoVizによるデータセットの自動視覚化

はじめに データ・セットの分析や要約に用いられる手法に探索的データ分析(EDA:Explanatory Data Analysis) があり、それはデータの主な性質や構造的な特徴、データの相関を可視化して機械学習などのデータ解析の指針や方向性の検討を行います。そういっ…

【第25回】超高速DataFrameライブラリーPolarsの使用マニュアル:DataFrameの作成、csv出力・読込、要素の抽出、条件分岐、列の追加、グループごとの処理、日付データの処理、欠損値の処理、DataFrameの結合

はじめに 時系列データ分析やビックデータ分析などのテーブルデータの分析におけるDataFrameの処理にはPandasが一般的に使用されてきました。近年、RustベースのPolarsというライブラリが注目を集めています。注目されている理由として、従来使用されてきたP…

【第24回】OpenpyxlによるExcelデータの出力

はじめに データ分析やシステム実行時の出力の際に用いられるファイル形式は、csv形式、txt形式、xml形式などが一般的です。しかしながら、それらはエンジニア以外の方以外にとっては扱いずらいことが多いです。一方で扱いやすいファイル形式の一つとして、E…

【第23回】リスト内包表記による処理時間の高速化

はじめに ビックデータに対するデータ分析を行う際に、データを処理する時間が長くなる傾向があります。処理時間が長いことはそれだけ結果を出すのに時間がかかることから、デメリットと言えます。ましてやアルゴリズムを考案する際に試験的に実行して動作確…

【第22回】datetimeとtimeによる日付・時間データの取得と計算

はじめに データ分析を実施している際に、日付や時刻といった時間の計算をするケースが多々あります。その際に用いるライブラリがdatetimeやtimeです。時系列データを扱う際にdatetimeとtimeのライブラリを多用します。時系列データの場合、データに日付が入…

【第21回】os.pathを用いたフォルダ名・ファイル名の取得、パスの結合、存在確認

はじめに Pythonを用いたデータ分析では、フォルダやファイルを指定し、そのデータを読み込むという工程が多いと思います。例えばその際にファイルパスから***.jpgなどのファイル名だけを抽出したり、フォルダの直前の階層のフォルダ名だけを抽出したり、指…

【第20回】numpy、pandas、scipyを用いたデータの平滑化:移動平均法とSavitzkey-Golayフィルタ

はじめに センサーなどのデータを分析しようとした際に、データにノイズがのっているケースがあると思います。その時に実施するのがデータの平滑化(スムージング)です。例えば、スパイクノイズなどがデータに満たれた場合、データを平滑化することでデータ…

【第19回】scipyを用いたデータの補間

はじめに SciPyは、プログラミング数学、科学、工学のための数値解析ソフトウェアです。 例えば以下のようなサブモジュールが用意されています。 補間( scipy.interpolate) 数値積分:(scipy.integrate) 信号解析(scipy.signal) 画像処理(scipy.ndimag…

【第18回】Seabornのカラーマップで指定できるカラーパレット

はじめに seabornは、matplotlibに基づくPythonデータ視覚化ライブラリです。 魅力的で有益な統計グラフィックスを描画するための高レベルのインターフェイスを提供します。 matplotlibと比較して、より手軽に美しく可視化ができるライブラリとなっています…

【第17回】Seabornで用意されているデータセット

はじめに seabornは、matplotlibに基づくPythonデータ視覚化ライブラリです。 魅力的で有益な統計グラフィックスを描画するための高レベルのインターフェイスを提供します。 matplotlibと比較して、より手軽に美しく可視化ができるライブラリとなっています…

【第16回】Seabornを用いたグラフの作成

はじめに seabornは、matplotlibに基づくPythonデータ視覚化ライブラリです。 魅力的で有益な統計グラフィックスを描画するための高レベルのインターフェイスを提供します。 matplotlibと比較して、より手軽に美しく可視化ができるライブラリとなっています…

【第15回】matplotlibを用いたヒストグラムの作成

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第14回】matplotlibを用いた円グラフの作成

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第13回】matplotlibを用いた棒グラフの作成

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第12回】matplotlibで用いる線のマーカーの形・色、線の種類について

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第11回】 matplotlibを用いた散布図の作成

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第10回】matplotlibを用いた折れ線グラフの作成

はじめに matplotlibは様々な種類のグラフを描画するライブラリで、描画できるのは主に2次元のプロットですが、3次元プロットの機能も追加されてきています。 例えば以下の様なグラフを作成することができます。 ヒストグラム 散布図 折れ線グラフ 円グラフ …

【第9回】globを用いたファイル名のリストの取得

はじめに フォルダ内にcsv形式やテキスト形式のデータが保存されていて、そのファイルを一つ一つ選択してデータ処理するのは、非常にめんどくさいですよね。ましてや10個や100個などなると非常に大変です。 そんな時に役立つのがglobと呼ばれるPythonのライ…

【第8回】Pandasによる欠損値処理、データの連結、統計値の算出、データ型の変換

はじめに プログラミング言語Pythonにおいて、データ解析を支援する機能を提供するライブラリです。特に、数表および時系列データを操作するためのデータ構造と演算を提供しています。DataFrameなどの独自の構造が用いられています。機械学習において前処理…

【第7回】Pandasにおけるデータ抽出、並び替え、挿入、時系列データの生成

はじめに プログラミング言語Pythonにおいて、データ解析を支援する機能を提供するライブラリです。特に、数表および時系列データを操作するためのデータ構造と演算を提供しています。DataFrameなどの独自の構造が用いられています。機械学習において前処理…

【第6回】Pandasにおけるデータの生成・格納、抽出、読み込み

はじめに プログラミング言語Pythonにおいて、データ解析を支援する機能を提供するライブラリです。特に、数表および時系列データを操作するためのデータ構造と演算を提供しています。DataFrameなどの独自の構造が用いられています。機械学習において前処理…

【第5回】Numpyにおける配列の統計値、小数点の処理、欠損値の確認

はじめに Numpyはプログラミング言語Pythonにおいて数値計算を効率的に行うためのモジュールで、科学数値計算にはNumpyを用いることが非常に多くなっています。このモジュールは、効率的な数値計算を行うための型付きの多次元配列のサポートをPythonに加える…

【第4回】Numpyにおける配列の演算、加減乗除、条件による判定

はじめに Numpyはプログラミング言語Pythonにおいて数値計算を効率的に行うためのモジュールで、科学数値計算にはNumpyを用いることが非常に多くなっています。このモジュールは、効率的な数値計算を行うための型付きの多次元配列のサポートをPythonに加える…

【第3回】 Numpyにおける数列の作成と加工

はじめに Numpyはプログラミング言語Pythonにおいて数値計算を効率的に行うためのモジュールで、科学数値計算にはNumpyを用いることが非常に多くなっています。このモジュールは、効率的な数値計算を行うための型付きの多次元配列のサポートをPythonに加える…

【第2回】 Numpyにおける配列の作成、変形、再代入

はじめに Numpyはプログラミング言語Pythonにおいて数値計算を効率的に行うためのモジュールで、科学数値計算にはNumpyを用いることが非常に多くなっています。このモジュールは、効率的な数値計算を行うための型付きの多次元配列のサポートをPythonに加える…

【第1回】科学数値計算、自然言語処理、機械学習で使用するモジュールについて

はじめに この記事を読んでいる方は、データサイエンスの世界でデータサイエンティストやデータアナリストを目指す方が多いかと思います。私自身ももともとは実験家でPythonなど触れたことのない人物でした。そこから、約1年半、Pythonを各ライブラリを用い…