min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

ChatGPT「ある列に202001,202002,202003,…というデータが入っているCSVを読み込んで、2020年1月、2020年2月、2020年3月…のように認識して折れ線グラフにするPythonコードのサンプルを見せて」

ハピタス登録で1,000円分になるURL

その買うを、もっとハッピーに。|ハピタス

 

ChatGPTのコードが実用的すぎて笑う

 

ある列に202001,202002,202003,…というデータが入っているCSVを読み込んで、2020年1月、2020年2月、2020年3月…のように認識して折れ線グラフにするPythonコードのサンプルを見せて

 

素晴らしい。

 

データフレームdfのうち、年月列(年月日ではなく)を日付として認識させたい

 202001 → 2020/01(年月)

 202002 → 2020/02

 …

のをそのままChatGPTに質問して出てきたコードがコレ↑

 

ちなみに全く役に立たなかったGoogleの回答はコレ↓

 

さらに続けて質問

その折れ線グラフにマーカーをプロットして、数字(項目ラベル)もつけるコードを見せて


その項目ラベルを書き込む間隔をマーカー一つ飛ばしにして

 

import pandas as pd

import pandas as pd
import matplotlib.pyplot as plt

# CSVの読み込み
df = pd.read_csv("sample.csv")

# 日付のフォーマットを変更
df['date'] = pd.to_datetime(df['date'], format='%Y%m')

# 折れ線グラフの描画
plt.plot(df['date'], df['data'], marker='o')
plt.xlabel('Month')
plt.ylabel('Data')
plt.title('Monthly Data')

# X軸の目盛りに月名を表示
plt.gcf().autofmt_xdate()

# マーカーに数字をつける(マーカー一つ飛ばし)
for i, (x, y) in enumerate(zip(df['date'], df['data'])):
    if i % 2 == 0:
        plt.text(x, y, str(y), ha='center', va='bottom')

# 表示
plt.show()

 

ChatGPT最高だわ。これエンジニアのためのものだろ。巷のヌルい大衆がお遊びAIとして使うにはもったいない。そいつらにはtwitterの自動応答ボットでも食わせておけばよい。

 

 

 

 

 

 

その買うを、もっとハッピーに。|ハピタス