変数の分布を視覚化するためのPythonのSeaborn関数

変数の分布を視覚化するためのPythonのSeaborn関数

複数の変数で構成されるデータ セットを操作する場合、それらがどのように異なり、相互に作用するかを理解できることが最善です。このチュートリアルでは、Python で Seaborn 関数を使用して、変数の分布の代替を視覚化する方法を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

目次

Python で Seaborn 関数を使用する

Seaborn 内で利用できる MPG データ セットでこれを実証します。それでは、必要なパッケージと必要なデータをインポートしてみましょう。ここでは MPG 変数の分布と、それらがどのように変化するかを見ていきます。これを行うための 2 つの一般的な方法は、ヒストグラム箱ひげ図です。

変数の分布を視覚化するためのPythonのSeaborn関数

そこでdisplot関数(配布用DIS)を使ってみます。次に、それがどのデータセットであるか、そしてどの変数を X 軸に配置するかを指定する必要があります。これで配布が完了しました。

これはかなり良いですね。全体の分布や形状が非常に見やすくなります。ただし、この分布の視覚化にはいくつかの欠点があります。1 つは、使用しているビンの数がおそらく任意であるということです。もう 1 つは、変数の平均が必ずしも即座にわかるとは限らないということです。

変数の分布を視覚化するためのPythonのSeaborn関数

Seaborn の良いところは、必要な変数、場所、使用するデータセットを設定したら、プラグアンドチャグで新しいビジュアライゼーションを作成できることです。次に、箱ひげ図に進みます。箱ひげ図はビンを使用しません。

ここでの考え方は、四分位値、具体的には中央値を明確に確認でき、他の四分位値も確認できるということです。外れ値があることがわかります。これは非常に正確なプロットです。箱ひげ図の問題は、一般に多くのビジネス ユーザーがおそらく気にしない事柄を正確に扱っていることです。

変数の分布を視覚化するためのPythonのSeaborn関数

したがって、このプロットは、統計に興味のない人にとっては、多くの価値を実際に理解するのが少し難しいです。繰り返しますが、データを集約しているため、多くの詳細が失われています。これがどのようなものかを正確に知るのは困難です。異常値があることがわかります。ほとんどの値がここにあることがわかります。ヒストグラムを使用すると、より直感的にそれを確認できます。

これらは両方とも良いプロットです。どちらにもそれぞれの目的があります。Seaborn を使用して視覚化するいくつかの代替案を見てみましょう。この変数の分布には MPG を使用することにします。

箱ひげ図と同様に、ここでも中央値が明確にマークされていることがわかります。四分位範囲も表示され、全体の分布がどのようになっているかをより詳しく知ることができます。これもヒストグラムのようなものです。これは、カーネル密度推定プロットまたは KDE プロットと呼ばれます。ヒストグラムの滑らかなバージョンです。任意のビニングは使用していません。ここではすべてが連続した範囲に平滑化されます。

変数の分布を視覚化するためのPythonのSeaborn関数

これはこれら 2 つのアプローチのハイブリッドのようなもので、いくつかの欠点を実際に解決します。ただし、視聴者によっては、これを見るのに本当に苦労するかもしれません。彼らはそれに慣れていないかもしれませんが、従来のアプローチにいくつかの利点があります。

このアプローチでは、データを集計しません。個々の点がすべてプロットされます。これには散布図の要素が必要ですよね? 散布図について考えると、X 座標と Y 座標上のすべての個々の点がプロットされます。

変数の分布を視覚化するためのPythonのSeaborn関数

最後に、ストリッププロットがあります。ここで行っているのは、その分布を取得し、ランダムに分散していることです。これはランダムなプロセスです。私たちはもうそのような分布形態を作ろうとしているわけではありません。これの問題は、これらすべての塊が互いに衝突していることです。そのため、何をしようとしているかによっては、それが良くない可能性があります。おそらくグループごとに色を付けたい場合など、そのためのオプションがあります。

変数の分布を視覚化するためのPythonのSeaborn関数

ジッターを 0.25 に変更すると、ジッターを増加させると、これらのポイントがもう少し分散されることがわかります。

変数の分布を視覚化するためのPythonのSeaborn関数

ただし、実行するたびに、見た目が少しずつ異なります。したがって、それを取り除いて毎回同じにしたい場合は、numpy を np としてインポートできます。これが行うことは、いわゆるランダム シードの設定です。

乱数に関係する何かを実行するたびに、同じ乱数が使用されます。再実行しても状況がランダムに変わるわけではありません。これは、実行しているあらゆる種類のシミュレーションに適している可能性があります。これは、この視覚化を使用したデータ サイエンスや分析でもよく起こります。したがって、このプロットを実行するたびに、同じ外観が得られることになります。

変数の分布を視覚化するためのPythonのSeaborn関数

ここに Y 原点を追加することもでき、二変分布を作成していることがわかります。走行距離分布を取得し、それを出発地ごとにセグメント化します。

変数の分布を視覚化するためのPythonのSeaborn関数


LuckyTemplates で Python スクリプトを使用する方法
LuckyTemplates での Python スクリプト
ProfileReport() を使用した Pandas のデータ レポート データセット | LuckyTemplates の Python

結論

これらは、1 つの変数の分布を視覚化するための代替手段です。それらにはすべて長所と短所があります。これは、箱ひげ図やヒストグラムを決して使用しないと言っているわけではありませんが、表示しようとしているものに応じて、他のオプションがいくつかあると言っているだけです。

Python で Seaborn 関数を使用する場合、これらはすべて他のものと同じくらい簡単に作成できます。Pythonについてさらに詳しく知りたい場合は、以下のリンクをチェックしてください。

ではごきげんよう!


Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。