質問編集履歴
3
書式の改善 補足事項の追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -68,20 +68,22 @@
|
|
68
68
|
|
69
69
|
```
|
70
70
|
|
71
|
-
|
71
|
+
###上記を保管しているファイル名は「新・給与関係」という名前で、ファイル内は以下のようになっております。split_file というのが担当者枚に分けるコード(教えて頂いた)です。
|
72
|
+
|
72
|
-
|
73
|
+
![イメージ説明](e7e75299f38f949b776c9431ba0e47f1.png)
|
74
|
+
|
75
|
+
|
76
|
+
|
73
|
-
|
77
|
+
###上記質問に対し2パターンのご回答を頂きました。自分で実行するとどうしてもエラーが出てしまし、何が原因なのか分かりません。基本的な質問で誠に申し訳ありませんが何卒よろしくお願いいたします。
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
78
|
+
|
79
|
+
|
80
|
+
|
79
|
-
###各営業担当毎にデータを集計する為のコードです(教
|
81
|
+
###各営業担当毎にデータを集計する為のコードです(2パターン教えて頂きました。)
|
82
|
+
|
83
|
+
お教えいただいたコード➀
|
80
84
|
|
81
85
|
```ここに言語を入力
|
82
86
|
|
83
|
-
|
84
|
-
|
85
87
|
import openpyxl as excel, json
|
86
88
|
|
87
89
|
|
@@ -120,7 +122,13 @@
|
|
120
122
|
|
121
123
|
sheet = excel.load_workbook(in_file).active
|
122
124
|
|
123
|
-
for row in sheet.iter_rows():
|
125
|
+
for i, row in enumerate(sheet.iter_rows()):
|
126
|
+
|
127
|
+
#5行目からデータを読み取る
|
128
|
+
|
129
|
+
if i<4:
|
130
|
+
|
131
|
+
continue
|
124
132
|
|
125
133
|
values = [col.value for col in row]
|
126
134
|
|
@@ -130,8 +138,6 @@
|
|
130
138
|
|
131
139
|
users[name].append(values)
|
132
140
|
|
133
|
-
|
134
|
-
|
135
141
|
return users
|
136
142
|
|
137
143
|
|
@@ -144,19 +150,17 @@
|
|
144
150
|
|
145
151
|
|
146
152
|
|
147
|
-
for row in rows:
|
153
|
+
for row in rows:
|
148
|
-
|
149
|
-
|
150
|
-
|
154
|
+
|
151
|
-
date, name, item, cnt, price, per = row
|
155
|
+
space,usercode, date, username, name, appointer,zipno, item, kouji, mobile, nazo, mail, cnt, price, per, bikou = row
|
152
156
|
|
153
157
|
date_s = date.strftime('%m/%d')
|
154
158
|
|
155
|
-
|
156
|
-
|
157
159
|
items.append([date_s, name, item, cnt, price, per])
|
158
160
|
|
161
|
+
|
162
|
+
|
159
|
-
total += cnt * price
|
163
|
+
total += (cnt or 0) * (price or 0)
|
160
164
|
|
161
165
|
return {'items':items, 'total': total}
|
162
166
|
|
@@ -166,6 +170,10 @@
|
|
166
170
|
|
167
171
|
split_list()
|
168
172
|
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
169
177
|
|
170
178
|
|
171
179
|
|
@@ -174,14 +182,102 @@
|
|
174
182
|
|
175
183
|
```
|
176
184
|
|
177
|
-
###実行後のエラーです。
|
185
|
+
###➀の実行後のエラーです。
|
186
|
+
|
178
|
-
|
187
|
+
```ここに言語を入力1 0
|
188
|
+
|
179
|
-
|
189
|
+
2 0
|
190
|
+
|
180
|
-
|
191
|
+
3 0
|
192
|
+
|
193
|
+
4 0
|
194
|
+
|
195
|
+
5 0
|
196
|
+
|
197
|
+
6 0
|
198
|
+
|
199
|
+
7 0
|
200
|
+
|
201
|
+
8 0
|
202
|
+
|
203
|
+
9 0
|
204
|
+
|
205
|
+
10 0
|
206
|
+
|
207
|
+
Traceback (most recent call last):
|
208
|
+
|
209
|
+
File "C:/Users/hannchou6/Desktop/新・給与関係/salesman.py", line 43, in <module>
|
210
|
+
|
211
|
+
split_list()
|
212
|
+
|
213
|
+
File "C:/Users/hannchou6/Desktop/新・給与関係/salesman.py", line 11, in split_list
|
214
|
+
|
215
|
+
result[name] = calc_user(rows)
|
216
|
+
|
217
|
+
File "C:/Users/hannchou6/Desktop/新・給与関係/salesman.py", line 36, in calc_user
|
218
|
+
|
181
|
-
|
219
|
+
date_s = date.strftime('%m/%d')
|
220
|
+
|
182
|
-
|
221
|
+
AttributeError: 'NoneType' object has no attribute 'strftime'
|
222
|
+
|
183
|
-
|
223
|
+
```
|
224
|
+
|
184
|
-
|
225
|
+
###各営業担当毎にデータを集計する為のコードです。
|
226
|
+
|
185
|
-
|
227
|
+
教えて頂いたコード➁
|
228
|
+
|
229
|
+
|
230
|
+
|
186
|
-
|
231
|
+
```ここに言語を入力
|
232
|
+
|
233
|
+
import pandas as pd
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
in_file = 'matome.xlsx'
|
238
|
+
|
239
|
+
df = pd.read_excel(in_file)
|
240
|
+
|
241
|
+
print(df)
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
print(df.groupby('担当者名2(アポインター)').sum()['金額'])
|
246
|
+
|
247
|
+
```
|
248
|
+
|
249
|
+
|
250
|
+
|
187
|
-
|
251
|
+
###➁の実行後のエラーです。
|
252
|
+
|
253
|
+
```ここに言語を入
|
254
|
+
|
255
|
+
Empty DataFrame
|
256
|
+
|
257
|
+
Columns: []
|
258
|
+
|
259
|
+
Index: []
|
260
|
+
|
261
|
+
Traceback (most recent call last):
|
262
|
+
|
263
|
+
File "C:\Users\hannchou6\Desktop\新・給与関係\split_list.py", line 7, in <module>
|
264
|
+
|
265
|
+
print(df.groupby('担当者名2(アポインター)').sum()['金額'])
|
266
|
+
|
267
|
+
File "C:\Users\hannchou6\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\core\frame.py", line 6717, in groupby
|
268
|
+
|
269
|
+
return DataFrameGroupBy(
|
270
|
+
|
271
|
+
File "C:\Users\hannchou6\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\core\groupby\groupby.py", line 560, in __init__
|
272
|
+
|
273
|
+
grouper, exclusions, obj = get_grouper(
|
274
|
+
|
275
|
+
File "C:\Users\hannchou6\AppData\Local\Programs\Python\Python39\lib\site-packages\pandas\core\groupby\grouper.py", line 811, in get_grouper
|
276
|
+
|
277
|
+
raise KeyError(gpr)
|
278
|
+
|
279
|
+
KeyError: '担当者名2(アポインター)'
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
```
|
2
書式の改善 補足事項の追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -77,6 +77,10 @@
|
|
77
77
|
|
78
78
|
|
79
79
|
###各営業担当毎にデータを集計する為のコードです(教材の見よう見まねです。)
|
80
|
+
|
81
|
+
```ここに言語を入力
|
82
|
+
|
83
|
+
|
80
84
|
|
81
85
|
import openpyxl as excel, json
|
82
86
|
|
@@ -166,7 +170,7 @@
|
|
166
170
|
|
167
171
|
|
168
172
|
|
169
|
-
|
173
|
+
|
170
174
|
|
171
175
|
```
|
172
176
|
|
1
回答者様からのご要望により直接データをのせた
test
CHANGED
File without changes
|
test
CHANGED
@@ -32,11 +32,51 @@
|
|
32
32
|
|
33
33
|
![イメージ説明](a1dc53fd3c6272fb9fddb549729da450.png)
|
34
34
|
|
35
|
+
###エクセルからコピー致しました。行などがかなりずれてしまって見づらくて申し訳ありません。
|
36
|
+
|
37
|
+
顧客名がa1,a2... です。
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
```ここに言語を入力
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
顧客コード 日付 顧客名 担当者名(クローザー) 担当者名2(アポインター) 〒 住所1 工事内容 携帯電話 固定電話 メールアドレス 割引金額 金額 歩合率
|
46
|
+
|
47
|
+
1 2021/6/7 a1 近藤 阿部 千葉県2-12-14 工事 090-xxxx-xxxx ¥2,200,000 12.0%
|
48
|
+
|
49
|
+
2 2021/6/8 a2 近藤 阿部 神奈川県2-12-15 工事 91-xxxx-xxxx ¥4,560,000 12.0%
|
50
|
+
|
51
|
+
3 2021/6/9 a3 近藤 阿部 北海道 工事 92-xxxx-xxxx ¥1,236,000 12.0%
|
52
|
+
|
53
|
+
4 2021/6/10 a4 近藤 田中 沖縄県 工事 93-xxxx-xxxx ¥1,230,000 12.0%
|
54
|
+
|
55
|
+
5 2021/6/11 a5 近藤 佐藤 沖縄県 工事 94-xxxx-xxxx ¥1,430,000 12.0%
|
56
|
+
|
57
|
+
6 2021/6/12 a6 近藤 齋藤 沖縄県 工事 95-xxxx-xxxx ¥675,000 11.0%
|
58
|
+
|
59
|
+
7 2021/6/13 a7 近藤 阿部 沖縄県 工事 96-xxxx-xxxx ¥324,000 10.0%
|
60
|
+
|
61
|
+
8 2021/6/14 a8 近藤 阿部 沖縄県 工事 97-xxxx-xxxx ¥908,000 6.0%
|
62
|
+
|
63
|
+
9 2021/6/15 a9 近藤 阿部 沖縄県 工事 98-xxxx-xxxx ¥564,000 9.0%
|
64
|
+
|
65
|
+
10 2021/6/16 a10 近藤 阿部 沖縄県 工事 99-xxxx-xxxx ¥234,000 8.0%
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
```
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
|
35
77
|
|
36
78
|
|
37
79
|
###各営業担当毎にデータを集計する為のコードです(教材の見よう見まねです。)
|
38
|
-
|
39
|
-
```
|
40
80
|
|
41
81
|
import openpyxl as excel, json
|
42
82
|
|