Open1

GPT4でうまくソースコード生成できた例

lilacs2039lilacs2039

DataFrameの軸の持ち替えとプロット [Bing chat]

Q

以下の形式のデータフレームをnameを凡例にしてプロットするサンプルコードを教えてください

name count time
0 m1 100 0.000023
1 m1 10000 0.000065
2 m1 1000000 0.004096
3 m2 100 0.000050
4 m2 10000 0.001573
5 m2 1000000 0.163428
6 m3 100 0.000014
7 m3 10000 0.000012
8 m3 1000000 0.001918

A

以下のようなデータフレームをdfとして、plot.line()関数を使って、凡例つきでプロットするには、以下のようにします。

import pandas as pd

df = pd.DataFrame({
'name': ['m1', 'm1', 'm1', 'm2', 'm2', 'm2', 'm3', 'm3', 'm3'],
'count': [100, 10000, 1000000, 100, 10000, 1000000, 100, 10000, 1000000],
'time': [0.000023, 0.000065, 0.004096, 0.000050, 0.001573, 0.163428, 0.000014, 0.000012, 0.001918]
})

df.pivot(index='count', columns='name', values='time').plot.line(legend=True)
この場合、dfの中には3つの列がありますが、そのうち’name’, ‘count’, 'time’という3つの列を折れ線グラフでプロットし、'name’を凡例に表示します。

結果