{ "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": [ "一个基本的散点图提醒我们,我们只有从八月到十二月的月度数据。我们可能需要更多数据才能以线性方式得出结论。\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-03T19:16:27+00:00", "source_file": "2-Regression/3-Linear/notebook.ipynb", "language_code": "zh" } }, "nbformat": 4, "nbformat_minor": 2 }