MMC-C/problem1.ipynb

1066 lines
31 KiB
Plaintext
Raw Normal View History

2024-09-07 06:22:58 +00:00
{
"cells": [
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:13.583685Z",
"start_time": "2024-09-07T06:13:13.566683Z"
}
},
"cell_type": "code",
"source": "import pandas as pd",
"id": "e19ec4ae5347c678",
"outputs": [],
"execution_count": 50
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:13.973538Z",
"start_time": "2024-09-07T06:13:13.906Z"
}
},
"cell_type": "code",
"source": [
"\n",
"df_crop_details = pd.read_excel('./data/2.xlsx', sheet_name=1)"
],
"id": "initial_id",
"outputs": [],
"execution_count": 51
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:18:12.104380Z",
"start_time": "2024-09-07T06:18:12.095949Z"
}
},
"cell_type": "code",
"source": [
"# 去除空格\n",
"df_crop_details['cropName'] = df_crop_details['cropName'].apply(lambda x: x.strip())\n",
"# CropType = [x.strip() for x in CropType]\n"
],
"id": "1d2a51b3414be94",
"outputs": [],
"execution_count": 62
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:18:14.180992Z",
"start_time": "2024-09-07T06:18:14.146973Z"
}
},
"cell_type": "code",
"source": [
"\n",
"unit_profit = []\n",
"for line in df_crop_details.values:\n",
" s = str(line[7]).split('-')\n",
" unit_profit.append((float(s[0]) + float(s[1])) / 2 * line[5] - line[6])\n",
"df_crop_details['unitProfit'] = unit_profit\n",
"df_crop_details"
],
"id": "3cdf51a9a9d4d30f",
"outputs": [
{
"data": {
"text/plain": [
" no cropNum cropName cropLandType season unitYield cost price \\\n",
"0 1 1 黄豆 平旱地 单季 400 400 2.50-4.00 \n",
"1 2 2 黑豆 平旱地 单季 500 400 6.50-8.50 \n",
"2 3 3 红豆 平旱地 单季 400 350 7.50-9.00 \n",
"3 4 4 绿豆 平旱地 单季 350 350 6.00-8.00 \n",
"4 5 5 爬豆 平旱地 单季 415 350 6.00-7.50 \n",
".. ... ... ... ... ... ... ... ... \n",
"120 103 30 生菜 智慧大棚 第二季 4500 2200 5.40-7.20 \n",
"121 104 31 辣椒 智慧大棚 第二季 1800 1300 7.20-10.20 \n",
"122 105 32 空心菜 智慧大棚 第二季 11000 5500 3.60-7.20 \n",
"123 106 33 黄心菜 智慧大棚 第二季 5400 2750 4.80-6.00 \n",
"124 107 34 芹菜 智慧大棚 第二季 6000 1200 3.80-5.80 \n",
"\n",
" unitProfit \n",
"0 900.00 \n",
"1 3350.00 \n",
"2 2950.00 \n",
"3 2100.00 \n",
"4 2451.25 \n",
".. ... \n",
"120 26150.00 \n",
"121 14360.00 \n",
"122 53900.00 \n",
"123 26410.00 \n",
"124 27600.00 \n",
"\n",
"[125 rows x 9 columns]"
],
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>no</th>\n",
" <th>cropNum</th>\n",
" <th>cropName</th>\n",
" <th>cropLandType</th>\n",
" <th>season</th>\n",
" <th>unitYield</th>\n",
" <th>cost</th>\n",
" <th>price</th>\n",
" <th>unitProfit</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>黄豆</td>\n",
" <td>平旱地</td>\n",
" <td>单季</td>\n",
" <td>400</td>\n",
" <td>400</td>\n",
" <td>2.50-4.00</td>\n",
" <td>900.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>黑豆</td>\n",
" <td>平旱地</td>\n",
" <td>单季</td>\n",
" <td>500</td>\n",
" <td>400</td>\n",
" <td>6.50-8.50</td>\n",
" <td>3350.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>红豆</td>\n",
" <td>平旱地</td>\n",
" <td>单季</td>\n",
" <td>400</td>\n",
" <td>350</td>\n",
" <td>7.50-9.00</td>\n",
" <td>2950.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>绿豆</td>\n",
" <td>平旱地</td>\n",
" <td>单季</td>\n",
" <td>350</td>\n",
" <td>350</td>\n",
" <td>6.00-8.00</td>\n",
" <td>2100.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>爬豆</td>\n",
" <td>平旱地</td>\n",
" <td>单季</td>\n",
" <td>415</td>\n",
" <td>350</td>\n",
" <td>6.00-7.50</td>\n",
" <td>2451.25</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>120</th>\n",
" <td>103</td>\n",
" <td>30</td>\n",
" <td>生菜</td>\n",
" <td>智慧大棚</td>\n",
" <td>第二季</td>\n",
" <td>4500</td>\n",
" <td>2200</td>\n",
" <td>5.40-7.20</td>\n",
" <td>26150.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>121</th>\n",
" <td>104</td>\n",
" <td>31</td>\n",
" <td>辣椒</td>\n",
" <td>智慧大棚</td>\n",
" <td>第二季</td>\n",
" <td>1800</td>\n",
" <td>1300</td>\n",
" <td>7.20-10.20</td>\n",
" <td>14360.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>122</th>\n",
" <td>105</td>\n",
" <td>32</td>\n",
" <td>空心菜</td>\n",
" <td>智慧大棚</td>\n",
" <td>第二季</td>\n",
" <td>11000</td>\n",
" <td>5500</td>\n",
" <td>3.60-7.20</td>\n",
" <td>53900.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>123</th>\n",
" <td>106</td>\n",
" <td>33</td>\n",
" <td>黄心菜</td>\n",
" <td>智慧大棚</td>\n",
" <td>第二季</td>\n",
" <td>5400</td>\n",
" <td>2750</td>\n",
" <td>4.80-6.00</td>\n",
" <td>26410.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>124</th>\n",
" <td>107</td>\n",
" <td>34</td>\n",
" <td>芹菜</td>\n",
" <td>智慧大棚</td>\n",
" <td>第二季</td>\n",
" <td>6000</td>\n",
" <td>1200</td>\n",
" <td>3.80-5.80</td>\n",
" <td>27600.00</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>125 rows × 9 columns</p>\n",
"</div>"
]
},
"execution_count": 63,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 63
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:15.178785Z",
"start_time": "2024-09-07T06:13:15.170785Z"
}
},
"cell_type": "code",
"source": [
"# 枚举地块类型\n",
"LandType = {\"A\": \"平旱地\", \"B\": \"梯田\", \"C\": \"山坡地\", \"D\": \"水浇地\", \"E\": \"普通大棚\", \"F\": \"智慧大棚\"}\n",
"LandType"
],
"id": "4a4e06a1f2d4d8ab",
"outputs": [
{
"data": {
"text/plain": [
"{'A': '平旱地', 'B': '梯田', 'C': '山坡地', 'D': '水浇地', 'E': '普通大棚', 'F': '智慧大棚'}"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 54
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:15.901386Z",
"start_time": "2024-09-07T06:13:15.885383Z"
}
},
"cell_type": "code",
"source": [
"# 读入作物名称\n",
"CropName = df_crop_details['cropName'].unique()\n",
"CropName"
],
"id": "7a0e6cc209d93b56",
"outputs": [
{
"data": {
"text/plain": [
"array(['黄豆', '黑豆', '红豆', '绿豆', '爬豆', '小麦', '玉米', '谷子', '高粱', '黍子', '荞麦',\n",
" '南瓜', '红薯', '莜麦', '大麦', '水稻', '豇豆', '刀豆', '芸豆', '土豆', '西红柿', '茄子',\n",
" '菠菜', '青椒', '菜花', '包菜', '油麦菜', '小青菜', '黄瓜', '生菜', '辣椒', '空心菜',\n",
" '黄心菜', '芹菜', '大白菜', '白萝卜', '红萝卜', '榆黄菇', '香菇', '白灵菇', '羊肚菌'],\n",
" dtype=object)"
]
},
"execution_count": 55,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 55
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:16.699865Z",
"start_time": "2024-09-07T06:13:16.681863Z"
}
},
"cell_type": "code",
"source": [
"any([x[-1] == ' ' for x in CropName])\n",
"# 居然有空格\n",
"# 现在去掉了"
],
"id": "bf6d61d66f06bdeb",
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 56
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:17.516868Z",
"start_time": "2024-09-07T06:13:17.369055Z"
}
},
"cell_type": "code",
"source": [
"# 亩产量\n",
"unit_yield = {\n",
" l: {\n",
" c: df_crop_details[\n",
" (df_crop_details['cropName'] == c) &\n",
" (df_crop_details['cropLandType'] == l)\n",
" ]['unitYield'].values[0] if df_crop_details[\n",
" (df_crop_details['cropName'] == c) &\n",
" (df_crop_details['cropLandType'] == l)\n",
" ]['unitYield'].values.size > 0 else 0\n",
" for c in CropName\n",
" }\n",
" for l in LandType.values()\n",
"}\n",
"\n",
"unit_yield"
],
"id": "22f9730e3d9c1016",
"outputs": [
{
"data": {
"text/plain": [
"{'平旱地': {'黄豆': 400,\n",
" '黑豆': 500,\n",
" '红豆': 400,\n",
" '绿豆': 350,\n",
" '爬豆': 415,\n",
" '小麦': 800,\n",
" '玉米': 1000,\n",
" '谷子': 400,\n",
" '高粱': 630,\n",
" '黍子': 525,\n",
" '荞麦': 110,\n",
" '南瓜': 3000,\n",
" '红薯': 2200,\n",
" '莜麦': 420,\n",
" '大麦': 525,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '梯田': {'黄豆': 380,\n",
" '黑豆': 475,\n",
" '红豆': 380,\n",
" '绿豆': 330,\n",
" '爬豆': 395,\n",
" '小麦': 760,\n",
" '玉米': 950,\n",
" '谷子': 380,\n",
" '高粱': 600,\n",
" '黍子': 500,\n",
" '荞麦': 105,\n",
" '南瓜': 2850,\n",
" '红薯': 2100,\n",
" '莜麦': 400,\n",
" '大麦': 500,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '山坡地': {'黄豆': 360,\n",
" '黑豆': 450,\n",
" '红豆': 360,\n",
" '绿豆': 315,\n",
" '爬豆': 375,\n",
" '小麦': 720,\n",
" '玉米': 900,\n",
" '谷子': 360,\n",
" '高粱': 570,\n",
" '黍子': 475,\n",
" '荞麦': 100,\n",
" '南瓜': 2700,\n",
" '红薯': 2000,\n",
" '莜麦': 380,\n",
" '大麦': 475,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '水浇地': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 500,\n",
" '豇豆': 3000,\n",
" '刀豆': 2000,\n",
" '芸豆': 3000,\n",
" '土豆': 2000,\n",
" '西红柿': 2400,\n",
" '茄子': 6400,\n",
" '菠菜': 2700,\n",
" '青椒': 2400,\n",
" '菜花': 3300,\n",
" '包菜': 3700,\n",
" '油麦菜': 4100,\n",
" '小青菜': 3200,\n",
" '黄瓜': 12000,\n",
" '生菜': 4100,\n",
" '辣椒': 1600,\n",
" '空心菜': 10000,\n",
" '黄心菜': 5000,\n",
" '芹菜': 5500,\n",
" '大白菜': 5000,\n",
" '白萝卜': 4000,\n",
" '红萝卜': 3000,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '普通大棚': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 0,\n",
" '豇豆': 3600,\n",
" '刀豆': 2400,\n",
" '芸豆': 3600,\n",
" '土豆': 2400,\n",
" '西红柿': 3000,\n",
" '茄子': 8000,\n",
" '菠菜': 3300,\n",
" '青椒': 3000,\n",
" '菜花': 4000,\n",
" '包菜': 4500,\n",
" '油麦菜': 5000,\n",
" '小青菜': 4000,\n",
" '黄瓜': 15000,\n",
" '生菜': 5000,\n",
" '辣椒': 2000,\n",
" '空心菜': 12000,\n",
" '黄心菜': 6000,\n",
" '芹菜': 6600,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 5000,\n",
" '香菇': 4000,\n",
" '白灵菇': 10000,\n",
" '羊肚菌': 1000},\n",
" '智慧大棚': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 0,\n",
" '豇豆': 3600,\n",
" '刀豆': 2400,\n",
" '芸豆': 3600,\n",
" '土豆': 2400,\n",
" '西红柿': 3000,\n",
" '茄子': 8000,\n",
" '菠菜': 3300,\n",
" '青椒': 3000,\n",
" '菜花': 4000,\n",
" '包菜': 4500,\n",
" '油麦菜': 5000,\n",
" '小青菜': 4000,\n",
" '黄瓜': 15000,\n",
" '生菜': 5000,\n",
" '辣椒': 2000,\n",
" '空心菜': 12000,\n",
" '黄心菜': 6000,\n",
" '芹菜': 6600,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0}}"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 57
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:13:18.373009Z",
"start_time": "2024-09-07T06:13:18.236981Z"
}
},
"cell_type": "code",
"source": [
"# 亩利润\n",
"unit_profit = {\n",
" l: {\n",
" c: df_crop_details[\n",
" (df_crop_details['cropName'] == c) &\n",
" (df_crop_details['cropLandType'] == l)\n",
" ]['unitProfit'].values[0]\n",
" if df_crop_details[\n",
" (df_crop_details['cropName'] == c) &\n",
" (df_crop_details['cropLandType'] == l)\n",
" ]['unitYield'].values.size > 0 else 0\n",
" for c in CropName\n",
" }\n",
" for l in LandType.values()\n",
"}\n",
"\n",
"unit_profit"
],
"id": "99dbe4ca6c54db0b",
"outputs": [
{
"data": {
"text/plain": [
"{'平旱地': {'黄豆': 900.0,\n",
" '黑豆': 3350.0,\n",
" '红豆': 2950.0,\n",
" '绿豆': 2100.0,\n",
" '爬豆': 2451.25,\n",
" '小麦': 2350.0,\n",
" '玉米': 2500.0,\n",
" '谷子': 2340.0,\n",
" '高粱': 3380.0,\n",
" '黍子': 3577.5,\n",
" '荞麦': 4050.0,\n",
" '南瓜': 3500.0,\n",
" '红薯': 5150.0,\n",
" '莜麦': 1910.0,\n",
" '大麦': 1487.5,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '梯田': {'黄豆': 835.0,\n",
" '黑豆': 3162.5,\n",
" '红豆': 2785.0,\n",
" '绿豆': 1960.0,\n",
" '爬豆': 2316.25,\n",
" '小麦': 2210.0,\n",
" '玉米': 2350.0,\n",
" '谷子': 2205.0,\n",
" '高粱': 3200.0,\n",
" '黍子': 3390.0,\n",
" '荞麦': 3850.0,\n",
" '南瓜': 3275.0,\n",
" '红薯': 4825.0,\n",
" '莜麦': 1800.0,\n",
" '大麦': 1400.0,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '山坡地': {'黄豆': 770.0,\n",
" '黑豆': 2975.0,\n",
" '红豆': 2620.0,\n",
" '绿豆': 1855.0,\n",
" '爬豆': 2181.25,\n",
" '小麦': 2070.0,\n",
" '玉米': 2200.0,\n",
" '谷子': 2070.0,\n",
" '高粱': 3020.0,\n",
" '黍子': 3202.5,\n",
" '荞麦': 3650.0,\n",
" '南瓜': 3050.0,\n",
" '红薯': 4500.0,\n",
" '莜麦': 1690.0,\n",
" '大麦': 1312.5,\n",
" '水稻': 0,\n",
" '豇豆': 0,\n",
" '刀豆': 0,\n",
" '芸豆': 0,\n",
" '土豆': 0,\n",
" '西红柿': 0,\n",
" '茄子': 0,\n",
" '菠菜': 0,\n",
" '青椒': 0,\n",
" '菜花': 0,\n",
" '包菜': 0,\n",
" '油麦菜': 0,\n",
" '小青菜': 0,\n",
" '黄瓜': 0,\n",
" '生菜': 0,\n",
" '辣椒': 0,\n",
" '空心菜': 0,\n",
" '黄心菜': 0,\n",
" '芹菜': 0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '水浇地': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 2820.0,\n",
" '豇豆': 22000.0,\n",
" '刀豆': 12500.0,\n",
" '芸豆': 17500.0,\n",
" '土豆': 5500.0,\n",
" '西红柿': 13000.0,\n",
" '茄子': 33200.0,\n",
" '菠菜': 13225.0,\n",
" '青椒': 11000.0,\n",
" '菜花': 15750.0,\n",
" '包菜': 21150.0,\n",
" '油麦菜': 18900.0,\n",
" '小青菜': 16800.0,\n",
" '黄瓜': 81100.0,\n",
" '生菜': 19925.0,\n",
" '辣椒': 10600.0,\n",
" '空心菜': 40900.0,\n",
" '黄心菜': 20500.0,\n",
" '芹菜': 21100.0,\n",
" '大白菜': 10500.0,\n",
" '白萝卜': 9500.0,\n",
" '红萝卜': 9250.0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0},\n",
" '普通大棚': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 0,\n",
" '豇豆': 26400.0,\n",
" '刀豆': 15000.0,\n",
" '芸豆': 21000.0,\n",
" '土豆': 6600.0,\n",
" '西红柿': 16350.0,\n",
" '茄子': 41600.0,\n",
" '菠菜': 16275.0,\n",
" '青椒': 13750.0,\n",
" '菜花': 19000.0,\n",
" '包菜': 25750.0,\n",
" '油麦菜': 23000.0,\n",
" '小青菜': 21000.0,\n",
" '黄瓜': 101500.0,\n",
" '生菜': 24250.0,\n",
" '辣椒': 13300.0,\n",
" '空心菜': 49000.0,\n",
" '黄心菜': 24500.0,\n",
" '芹菜': 25300.0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 284500.0,\n",
" '香菇': 74000.0,\n",
" '白灵菇': 150000.0,\n",
" '羊肚菌': 90000.0},\n",
" '智慧大棚': {'黄豆': 0,\n",
" '黑豆': 0,\n",
" '红豆': 0,\n",
" '绿豆': 0,\n",
" '爬豆': 0,\n",
" '小麦': 0,\n",
" '玉米': 0,\n",
" '谷子': 0,\n",
" '高粱': 0,\n",
" '黍子': 0,\n",
" '荞麦': 0,\n",
" '南瓜': 0,\n",
" '红薯': 0,\n",
" '莜麦': 0,\n",
" '大麦': 0,\n",
" '水稻': 0,\n",
" '豇豆': 26400.0,\n",
" '刀豆': 15000.0,\n",
" '芸豆': 21000.0,\n",
" '土豆': 6600.0,\n",
" '西红柿': 16350.0,\n",
" '茄子': 41600.0,\n",
" '菠菜': 16275.0,\n",
" '青椒': 13750.0,\n",
" '菜花': 19000.0,\n",
" '包菜': 25750.0,\n",
" '油麦菜': 23000.0,\n",
" '小青菜': 21000.0,\n",
" '黄瓜': 101500.0,\n",
" '生菜': 24250.0,\n",
" '辣椒': 13300.0,\n",
" '空心菜': 49000.0,\n",
" '黄心菜': 24500.0,\n",
" '芹菜': 25300.0,\n",
" '大白菜': 0,\n",
" '白萝卜': 0,\n",
" '红萝卜': 0,\n",
" '榆黄菇': 0,\n",
" '香菇': 0,\n",
" '白灵菇': 0,\n",
" '羊肚菌': 0}}"
]
},
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 58
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:19:55.362587Z",
"start_time": "2024-09-07T06:19:55.203621Z"
}
},
"cell_type": "code",
"source": [
"# 每种作物的总需求\n",
"crop_demand = {\n",
" c: 0\n",
" for c in CropName\n",
"}\n",
"\n",
"# 这里需要另一张表\n",
"df_crop_planting = pd.read_excel('./data/2.xlsx', sheet_name=0)\n",
"# 照例去除一下空格\n",
"df_crop_planting['cropName'] = df_crop_planting['cropName'].apply(lambda x: x.strip())\n",
"# ffill\n",
"df_crop_planting['landName'] = df_crop_planting['landName'].ffill()\n",
"for line in df_crop_planting.values:\n",
" # 面积*该土地类型的亩产量\n",
" crop_demand[line[2]] += line[4] * unit_yield[LandType[line[0][0]]][line[2]]\n",
"\n",
"crop_demand"
],
"id": "13f2ccc7aa215d4c",
"outputs": [
{
"data": {
"text/plain": [
"{'黄豆': 57000.0,\n",
" '黑豆': 21850.0,\n",
" '红豆': 22400.0,\n",
" '绿豆': 33040.0,\n",
" '爬豆': 9875.0,\n",
" '小麦': 170840.0,\n",
" '玉米': 132750.0,\n",
" '谷子': 71400.0,\n",
" '高粱': 30000.0,\n",
" '黍子': 12500.0,\n",
" '荞麦': 1500.0,\n",
" '南瓜': 35100.0,\n",
" '红薯': 36000.0,\n",
" '莜麦': 14000.0,\n",
" '大麦': 10000.0,\n",
" '水稻': 21000.0,\n",
" '豇豆': 36480.0,\n",
" '刀豆': 26880.0,\n",
" '芸豆': 6480.0,\n",
" '土豆': 30000.0,\n",
" '西红柿': 36300.0,\n",
" '茄子': 45600.0,\n",
" '菠菜': 990.0,\n",
" '青椒': 2700.0,\n",
" '菜花': 3600.0,\n",
" '包菜': 4050.0,\n",
" '油麦菜': 4500.0,\n",
" '小青菜': 35600.0,\n",
" '黄瓜': 13500.0,\n",
" '生菜': 3000.0,\n",
" '辣椒': 1200.0,\n",
" '空心菜': 3600.0,\n",
" '黄心菜': 1800.0,\n",
" '芹菜': 1980.0,\n",
" '大白菜': 150000.0,\n",
" '白萝卜': 100000.0,\n",
" '红萝卜': 36000.0,\n",
" '榆黄菇': 9000.0,\n",
" '香菇': 7200.0,\n",
" '白灵菇': 18000.0,\n",
" '羊肚菌': 4200.0}"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 67
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2024-09-07T06:21:14.398778Z",
"start_time": "2024-09-07T06:21:14.391229Z"
}
},
"cell_type": "code",
"source": [
"# 搞一下季节和年份的集合\n",
"seasons = [1, 2]\n",
"years = [2024, 2025, 2026, 2027, 2028, 2029, 2030]"
],
"id": "a7661d84217b578c",
"outputs": [],
"execution_count": 68
},
{
"metadata": {},
"cell_type": "code",
"outputs": [],
"execution_count": null,
"source": "",
"id": "5d09872708d40da4"
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}