質問編集履歴
2
コードの貼付ミス
title
CHANGED
File without changes
|
body
CHANGED
@@ -107,7 +107,7 @@
|
|
107
107
|
dtypes: object(3)
|
108
108
|
memory usage: 1.7+ KB
|
109
109
|
|
110
|
-
kakei.tail(
|
110
|
+
kakei.tail(7)#回答いただける方のため、念のため表示させます。最後の方の行は以下のとおり不要なのでこのあと参照から外します。
|
111
111
|
|
112
112
|
日付コード 日付 支出
|
113
113
|
61 2020000202 2020年2月 2,296
|
1
質問末尾にコードの全文(エラーメッセージ含む)を掲載しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -63,4 +63,109 @@
|
|
63
63
|
61 2,296
|
64
64
|
62 1,118
|
65
65
|
Name: 支出, Length: 63, dtype: object
|
66
|
+
```
|
67
|
+
|
68
|
+
|
69
|
+
**2020/5/10 追加:
|
70
|
+
皆様にご指導うけ、コード全文を以下に掲載いたしました。当初は以下のようにしてエラーになってしまったことについてお伺いしました。その後、カンマを削除したりしていくとまた別のエラー出て・・・ということになり先へ進めない状態になってしまっております。**
|
71
|
+
|
72
|
+
```Python
|
73
|
+
%matplotlib inline
|
74
|
+
import numpy as np
|
75
|
+
import pandas as pd
|
76
|
+
import seaborn as sb
|
77
|
+
import matplotlib.pyplot as plt
|
78
|
+
from datetime import datetime
|
79
|
+
from sklearn.metrics import mean_absolute_error
|
80
|
+
|
81
|
+
kakei=pd.read_excel('FEH_00200565_200510154100.xlsx')#気象庁からDLしたデータ、以下にhead()を表示します。
|
82
|
+
kakei.head(10)
|
83
|
+
|
84
|
+
統計名: 家計消費状況調査 平成29年改定(2015年1月~) 二人以上の世帯 Unnamed: 2 Unnamed: 3
|
85
|
+
0 表番号: 1-1 NaN NaN
|
86
|
+
1 表題: [インターネットを利用した1世帯当たり1か月間の支出] 全国・地方・都市階級別 NaN NaN
|
87
|
+
2 実施年月: - - NaN
|
88
|
+
3 表章項目: 00000 1世帯当たり1か月間の支出額 NaN
|
89
|
+
4 世帯区分(平成29年改定): 0030 二人以上の世帯 NaN
|
90
|
+
5 品目区分(平成29年改定): 0950 69 宿泊料、運賃、パック旅行費(インターネット上での決済)【円】 NaN
|
91
|
+
6 全国・地方・都市階級(平成29年改定): 0050 関東 NaN
|
92
|
+
7 NaN NaN NaN NaN
|
93
|
+
8 時間軸(月次・四半期・年次) コード 時間軸(月次・四半期・年次) 値 注釈
|
94
|
+
9 2015000101 2015年1月 1,526 NaN
|
95
|
+
|
96
|
+
kakei=kakei.drop('Unnamed: 3',axis=1)#一番右の列を不要なので削除
|
97
|
+
kakei.columns=['日付コード','日付','支出']
|
98
|
+
kakei=kakei.drop([0,1,2,3,4,5,6,7,8]).reset_index(drop=True)#index=9のところより上は利用しないので削除
|
99
|
+
kakei.info()#回答いただける方のため、念のため表示させます
|
100
|
+
|
101
|
+
<class 'pandas.core.frame.DataFrame'>
|
102
|
+
RangeIndex: 68 entries, 0 to 67
|
103
|
+
Data columns (total 3 columns):
|
104
|
+
日付コード 67 non-null object
|
105
|
+
日付 67 non-null object
|
106
|
+
支出 63 non-null object
|
107
|
+
dtypes: object(3)
|
108
|
+
memory usage: 1.7+ KB
|
109
|
+
|
110
|
+
kakei.tail(10)#回答いただける方のため、念のため表示させます。最後の方の行は以下のとおり不要なのでこのあと参照から外します。
|
111
|
+
|
112
|
+
日付コード 日付 支出
|
113
|
+
61 2020000202 2020年2月 2,296
|
114
|
+
62 2020000303 2020年3月 1,118
|
115
|
+
63 NaN NaN NaN
|
116
|
+
64 *** 数字が得られないもの NaN
|
117
|
+
65 - 該当数字がないもの NaN
|
118
|
+
66 ... 調査又は集計していないもの NaN
|
119
|
+
67 … 調査又は集計していないもの NaN
|
120
|
+
|
121
|
+
kakei=kakei.iloc[0:63,:]
|
122
|
+
kakei['支出']#回答いただける方のため、念のため表示させます。
|
123
|
+
|
124
|
+
0 1,526
|
125
|
+
1 1,808
|
126
|
+
2 1,712
|
127
|
+
3 1,515
|
128
|
+
4 1,874
|
129
|
+
...
|
130
|
+
58 2,499
|
131
|
+
59 2,731
|
132
|
+
60 2,943
|
133
|
+
61 2,296
|
134
|
+
62 1,118
|
135
|
+
Name: 支出, Length: 63, dtype: object
|
136
|
+
|
137
|
+
kakei['支出']=pd.to_numeric(kakei['支出'])
|
138
|
+
kakei['日付']=kakei['日付'].astype(str)
|
139
|
+
kakei['日付']=pd.to_datetime(kakei['日付'],format='%Y年%m月')
|
140
|
+
kakei['POSIX']=kakei['日付'].astype('int64').values//10**9
|
141
|
+
kakei['年']=kakei['日付'].dt.year
|
142
|
+
kakei['月']=kakei['日付'].dt.month
|
143
|
+
|
144
|
+
---------------------------------------------------------------------------
|
145
|
+
ValueError Traceback (most recent call last)
|
146
|
+
pandas\_libs\lib.pyx in pandas._libs.lib.maybe_convert_numeric()
|
147
|
+
|
148
|
+
ValueError: Unable to parse string "1,526"
|
149
|
+
|
150
|
+
During handling of the above exception, another exception occurred:
|
151
|
+
|
152
|
+
ValueError Traceback (most recent call last)
|
153
|
+
<ipython-input-301-4852b1d66c7f> in <module>
|
154
|
+
----> 1 kakei['支出']=pd.to_numeric(kakei['支出'])
|
155
|
+
2 kakei['日付']=kakei['日付'].astype(str)
|
156
|
+
3 kakei['日付']=pd.to_datetime(kakei['日付'],format='%Y年%m月')
|
157
|
+
4 kakei['POSIX']=kakei['日付'].astype('int64').values//10**9
|
158
|
+
5 kakei['年']=kakei['日付'].dt.year
|
159
|
+
|
160
|
+
~\Anaconda3\lib\site-packages\pandas\core\tools\numeric.py in to_numeric(arg, errors, downcast)
|
161
|
+
149 coerce_numeric = errors not in ("ignore", "raise")
|
162
|
+
150 values = lib.maybe_convert_numeric(
|
163
|
+
--> 151 values, set(), coerce_numeric=coerce_numeric
|
164
|
+
152 )
|
165
|
+
153
|
166
|
+
|
167
|
+
pandas\_libs\lib.pyx in pandas._libs.lib.maybe_convert_numeric()
|
168
|
+
|
169
|
+
ValueError: Unable to parse string "1,526" at position 0
|
170
|
+
|
66
171
|
```
|