パンダを使用した積み上げ棒グラフのプロット
質問:
どうすれば作成できますか?提供された画像に似たパンダ付きの積み上げ棒グラフ?現在のデータフレームは「サイト名」と「不正行為/NFF」数の別々の列で構成されており、データを整理したり積み上げ棒グラフを生成したりできません。
解決策:
1.データの準備:
「サイト名」と「不正行為/NFF」の両方でデータをグループ化し、それぞれの組み合わせの出現数をカウントして、新しいデータフレームを作成します。
2 。データのスタック:
.unstack() メソッドを使用して、インデックスとして「サイト名」、列として「Abuse/NFF」を使用してスタックされたデータフレームを作成します。
3.欠損値の充填:
.fillna(0) メソッドを使用して欠損値をゼロで埋めることにより、欠損値を処理します。
4.棒グラフのプロット:
積み上げ棒グラフを生成するには、kind パラメーターを 'bar' に設定し、積み上げパラメーターを True に設定して .plot() メソッドを使用します。
Python コード:
<code class="python">import pandas as pd import matplotlib.pyplot as plt # Create a dataframe from the CSV file df = pd.read_csv("data.csv") # Group by "Site Name" and "Abuse/NFF" and count occurrences df2 = df.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0) # Plot the stacked bar chart df2[['abuse','nff']].plot(kind='bar', stacked=True) plt.show()</code>
出力:
結果のプロットは、元の質問で提供された画像と似ており、スタック数が表示されます。各「サイト名」の「不正行為」と「NFF」
以上がグループ化されたデータを使用して Pandas で積み上げ棒グラフを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。