From af381a716ea6a508997fd51305483f58191d20ce Mon Sep 17 00:00:00 2001 From: "512song@sina.com" Date: Tue, 14 Feb 2023 22:37:34 +0800 Subject: [PATCH] 20230214 --- 体测单位/天津石化.ipynb | 96 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 95 insertions(+), 1 deletion(-) diff --git a/体测单位/天津石化.ipynb b/体测单位/天津石化.ipynb index 4f38f71..217d14a 100644 --- a/体测单位/天津石化.ipynb +++ b/体测单位/天津石化.ipynb @@ -1344,10 +1344,104 @@ "print('ok!')" ] }, + { + "cell_type": "markdown", + "id": "42e4ef5b-9aa8-4098-8f33-df9787dd34ab", + "metadata": {}, + "source": [ + "#### 倒班时间因素分析" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "255b5649-fb85-424d-9fad-0f3e1dff2be3", + "metadata": { + "execution": { + "iopub.execute_input": "2023-02-14T14:30:30.331426Z", + "iopub.status.busy": "2023-02-14T14:30:30.330830Z", + "iopub.status.idle": "2023-02-14T14:30:30.441098Z", + "shell.execute_reply": "2023-02-14T14:30:30.440041Z", + "shell.execute_reply.started": "2023-02-14T14:30:30.331376Z" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{2: {'num': 571, 'score': 1619.279999999999, 'zhongyi': 55, 'pianpo': 44}, 3: {'num': 665, 'score': 1730.73, 'zhongyi': 76, 'pianpo': 62}, 1: {'num': 129, 'score': 358.9600000000001, 'zhongyi': 23, 'pianpo': 19}, 0: {'num': 706, 'score': 1963.300000000001, 'zhongyi': 70, 'pianpo': 32}, 4: {'num': 81, 'score': 194.23999999999992, 'zhongyi': 17, 'pianpo': 14}}\n", + "ok!\n" + ] + } + ], + "source": [ + "import json\n", + "import openpyxl\n", + "\n", + "filename = 'data/天津石化人员231113_1.json'\n", + "with open(filename,'r') as fl:\n", + " dict1 = json.load(fl)\n", + "unit = set()\n", + "\n", + "for k, v in dict1.items():\n", + " unit.add(dict1[k]['unit'])\n", + "#print(unit)\n", + "dict2 = {}\n", + "for k, v in dict1.items():\n", + " if v['daoban'] == '是':\n", + " \n", + " gld = int(int(v['gl'])/10)\n", + " dict2.setdefault(gld,{}) \n", + " dict2[gld].setdefault('num',0)\n", + " dict2[gld].setdefault('score',0)\n", + " dict2[gld].setdefault('zhongyi',0)\n", + " dict2[gld].setdefault('pianpo',0) \n", + " if 'avg' in v.keys():\n", + " dict2[gld]['num'] = dict2[gld]['num'] + 1\n", + " dict2[gld]['score'] = dict2[gld]['score'] + v['avg']\n", + " if 'zhongyi' in v.keys() :\n", + " dict2[gld]['zhongyi'] = dict2[gld]['zhongyi'] + 1\n", + " if 'zhongyi' in v.keys() and v['zhongyi']!='平和':\n", + " dict2[gld]['pianpo'] = dict2[gld]['pianpo'] + 1\n", + "print(dict2)\n", + "nl = {}\n", + "nl[0] = '倒班工龄0-9年'\n", + "nl[1] = '倒班工龄10-19年'\n", + "nl[2] = '倒班工龄20-29年'\n", + "nl[3] = '倒班工龄30-39年'\n", + "nl[4] = '倒班工龄40-49年'\n", + "list1 = [] \n", + "for k, v in nl.items():\n", + " list2 = []\n", + " gld = v\n", + " \n", + " num = dict2[k]['num']\n", + " score = dict2[k]['score']\n", + " if num > 0:\n", + " avg = round(score/num,2)\n", + " else:\n", + " avg = 0\n", + " zhongyi = dict2[k]['zhongyi']\n", + " pianpo = dict2[k]['pianpo']\n", + " list2 = [gld,num,avg,zhongyi,pianpo]\n", + " list1.append(list2)\n", + "filename = 'data/天津倒班因素分析表(倒班工龄).xlsx' \n", + "wb = openpyxl.Workbook()\n", + "sheet = wb.active\n", + "\n", + "for row in list1:\n", + " sheet.append(row)\n", + " \n", + "wb.save(filename)\n", + "print('ok!')" + ] + }, { "cell_type": "code", "execution_count": null, - "id": "93ae7587-e49d-41c2-bd57-f89b9eed37e4", + "id": "683297cb-709a-40e1-a07f-59cf2cf8655b", "metadata": {}, "outputs": [], "source": []