質問編集履歴
1
試したことの追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -104,6 +104,130 @@
|
|
104
104
|
|
105
105
|
|
106
106
|
|
107
|
+
###試したこと
|
108
|
+
|
109
|
+
年ごとの比較も加えて、tuple()関数を使ってみましたが、実行結果がどちらもリストで返されてしまいました。
|
110
|
+
|
111
|
+
```python
|
112
|
+
|
113
|
+
fruits = [ #foodptice category
|
114
|
+
|
115
|
+
"かき",
|
116
|
+
|
117
|
+
"りんご",
|
118
|
+
|
119
|
+
"みかん"
|
120
|
+
|
121
|
+
]
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
index = {
|
126
|
+
|
127
|
+
"2017": {
|
128
|
+
|
129
|
+
"1月": [901, 997, 1003],
|
130
|
+
|
131
|
+
"2月": [918, 984, 1005],
|
132
|
+
|
133
|
+
"3月": [891, 985, 1007]
|
134
|
+
|
135
|
+
},
|
136
|
+
|
137
|
+
"2018": {
|
138
|
+
|
139
|
+
"1月": [885, 1006, 1010],
|
140
|
+
|
141
|
+
"2月": [877, 975, 1006],
|
142
|
+
|
143
|
+
"3月": [928, 999, 1006]
|
144
|
+
|
145
|
+
}
|
146
|
+
|
147
|
+
}
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
def month_change(m1, m2, m3):
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
month_status = [0]*len(fruits)
|
156
|
+
|
157
|
+
for idx_cat,cat in enumerate(fruits):
|
158
|
+
|
159
|
+
print(idx_cat,cat)
|
160
|
+
|
161
|
+
month_status[idx_cat] = (cat, 100*(m2[idx_cat] - m1[idx_cat])/m1[idx_cat],
|
162
|
+
|
163
|
+
100*(m3[idx_cat] - m2[idx_cat])/m2[idx_cat])
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
return month_status
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
month_data = month_change(index['2018']['1月'],
|
172
|
+
|
173
|
+
index['2018']['2月'],
|
174
|
+
|
175
|
+
index['2018']['3月'])
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
def year_change(y1, y2):
|
180
|
+
|
181
|
+
months = ['1月', '2月', '3月']
|
182
|
+
|
183
|
+
year_status = [0]*len(fruits)
|
184
|
+
|
185
|
+
for idx_cat,cat in enumerate(fruits):
|
186
|
+
|
187
|
+
year_furuits = [cat] + [0]*len(months)
|
188
|
+
|
189
|
+
for idx_month,month in enumerate(months):
|
190
|
+
|
191
|
+
print(idx_cat, cat, idx_month, month)
|
192
|
+
|
193
|
+
year_furuits[idx_month+1] = 100*(y2[month][idx_cat]
|
194
|
+
|
195
|
+
- y1[month][idx_cat])/y1[month][idx_cat]
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
year_status[idx_cat] = tuple(year_furuits)
|
200
|
+
|
201
|
+
|
202
|
+
|
203
|
+
return year_status
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
year_data = year_change(index['2017'],index['2018'])
|
208
|
+
|
209
|
+
```
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
実行結果
|
214
|
+
|
215
|
+
```
|
216
|
+
|
217
|
+
>>> year_data
|
218
|
+
|
219
|
+
[('かき', -1.7758046614872365, -4.466230936819172, 4.1526374859708195), ('りんご', 0.9027081243731193, -0.9146341463414634, 1.4213197969543148), ('みかん', 0.6979062811565304, 0.09950248756218906, -0.09930486593843098)]
|
220
|
+
|
221
|
+
>>> month_data
|
222
|
+
|
223
|
+
[('かき', -0.903954802259887, 5.815279361459521), ('りんご', -3.081510934393638, 2.4615384615384617), ('みかん', -0.39603960396039606, 0.0)]
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
```
|
228
|
+
|
229
|
+
|
230
|
+
|
107
231
|
### 補足情報(FW/ツールのバージョンなど)
|
108
232
|
|
109
233
|
Python 3.6.3
|