{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## かぼちゃの価格設定\n", "\n", "必要なライブラリとデータセットを読み込みます。データを以下の条件を満たすデータフレームに変換します:\n", "\n", "- ブッシェル単位で価格が設定されているかぼちゃのみを取得する\n", "- 日付を月に変換する\n", "- 高値と安値の平均を計算して価格を求める\n", "- 価格をブッシェル単位の数量に基づいた価格に変換する\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from datetime import datetime\n", "\n", "pumpkins = pd.read_csv('../data/US-pumpkins.csv')\n", "\n", "pumpkins.head()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "pumpkins = pumpkins[pumpkins['Package'].str.contains('bushel', case=True, regex=True)]\n", "\n", "columns_to_select = ['Package', 'Variety', 'City Name', 'Low Price', 'High Price', 'Date']\n", "pumpkins = pumpkins.loc[:, columns_to_select]\n", "\n", "price = (pumpkins['Low Price'] + pumpkins['High Price']) / 2\n", "\n", "month = pd.DatetimeIndex(pumpkins['Date']).month\n", "day_of_year = pd.to_datetime(pumpkins['Date']).apply(lambda dt: (dt-datetime(dt.year,1,1)).days)\n", "\n", "new_pumpkins = pd.DataFrame(\n", " {'Month': month, \n", " 'DayOfYear' : day_of_year, \n", " 'Variety': pumpkins['Variety'], \n", " 'City': pumpkins['City Name'], \n", " 'Package': pumpkins['Package'], \n", " 'Low Price': pumpkins['Low Price'],\n", " 'High Price': pumpkins['High Price'], \n", " 'Price': price})\n", "\n", "new_pumpkins.loc[new_pumpkins['Package'].str.contains('1 1/9'), 'Price'] = price/1.1\n", "new_pumpkins.loc[new_pumpkins['Package'].str.contains('1/2'), 'Price'] = price*2\n", "\n", "new_pumpkins.head()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "基本的な散布図は、8月から12月までの月データしかないことを思い出させてくれます。結論を線形的に導き出すには、もっと多くのデータが必要かもしれません。\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "plt.scatter('Month','Price',data=new_pumpkins)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "\n", "plt.scatter('DayOfYear','Price',data=new_pumpkins)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n---\n\n**免責事項**: \nこの文書は、AI翻訳サービス [Co-op Translator](https://github.com/Azure/co-op-translator) を使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があることをご承知ください。元の言語で記載された文書が正式な情報源とみなされるべきです。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤った解釈について、当方は責任を負いません。\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.3-final" }, "orig_nbformat": 2, "coopTranslator": { "original_hash": "b032d371c75279373507f003439a577e", "translation_date": "2025-09-04T01:01:40+00:00", "source_file": "2-Regression/3-Linear/notebook.ipynb", "language_code": "ja" } }, "nbformat": 4, "nbformat_minor": 2 }