LoginSignup
0

More than 5 years have passed since last update.

前々処理3:サクサク使うSQL(貿易統計のデータ検証)

Last updated at Posted at 2017-09-23

データを検証しましょう。(SQLは、知っている前提)

実際にデータ分析をすればわかりますが、データがおかしいことはしばしばりあり、検証することは重要です。大きなデータになればなるほど、検証の手間は大変です。実際のデータで検証をしてみましょう。
今、tmp.db にあるデータは、この2つです。

No 名称 件数 説明
1 ym_custom_latest 税関別データ 最新(2017 1-7 ) 2324451 sqlite 形式
2 ym_latest 全国データ  最新(2017 1-7 ) 814081 sqlite 形式に変換済み
  • 税関別データ(詳細) 全国に税関コードが加わっているだけ
No 項目 内容 補足
1 "index" INT index
2 exp_imp INT 輸出1,輸入2
3 Custom TEXT 税関コード (例)100 全国との違いはここだけ
4 Year INT 年 (例) 2016
5 month TEXT 月 (例) 01
6 Country TEXT 国コード (例) 103
7 Unit1 TEXT 数量の単位 1 キログラムと、リットルなどです。
8 Unit2 TEXT 数量の単位 2
9 hs2 TEXT HS code 2桁 HS code 2桁
10 hs4 TEXT HS code 4桁
11 hs6 TEXT HS code 6桁
12 hs9 TEXT HS code 9桁
13 Q1 INT 数量 1 数量の単位に対応
14 Q2 INT 数量 2
15 Value INT 金額 1000円

全国と税関別の合計(集計)はあうはずです。

  • 輸出、輸入(1月から7月までの集計)

全国

select exp_imp,sum(Value) as Value from ym_latest group by exp_imp

輸出入 金額
1 44283374669
2 42817910937

税関別

select exp_imp,sum(Value) as Value from ym_custom_latest group by exp_imp

輸出入 金額
1 44283374669
2 42817910937

全国と税関別の月ごとの合計

一時的なテーブルを作成して、比較してみます。

  • 全国 集計結果を一時的なテーブル x_ym に格納します。
create table x_ym as select exp_imp,month,sum(Value) as ym_value from ym_latest  group by exp_imp,month
  • 税関別もつくります。
create table x_ym_custom as select exp_imp,month,sum(Value) as ym_custom_value from ym_latest  group by exp_imp,month
  • 全国も、税関別も結果は同じはず。検証してみましょう。

税関別と全国の合計の差をとって、差があるところを、取り出しています。差はもちろんありません。

select x_ym.exp_imp,x_ym.month,
x_ym.ym_value - x_ym_custom.ym_custom_value as diff
from x_ym,x_ym_custom 
where x_ym.exp_imp = x_ym_custom.exp_imp and x_ym.month = x_ym_custom.month and
abs(diff) > 0

輸出統計品目コードではどうでしょうか(あいません)

hs9 271500000 アスファルトで調べてみましょう。

検証は、7月の輸出をつかいます。

select   sum(Value) as Value from ym_latest 
where exp_imp=1 and month='07' and hs9='271500000'
group by exp_imp,month

結果は、かなり食い違います。計算間違いでしょうか?

month 全国 税関別
07 418628 4389811

それでは、貿易統計のページで調べてみましょう。
まず、全国のは統計品別表で調べることができます。結果は、 418628 であっています。
税関別は、統計品別国別税関一覧表から検索できます。
結果 は、国別、税関別にでているので、集計する必要がありますが、
インドだけで、1144130 なのですでにあいません。エクセルにはりつけて、計算すると、4389811 になり、上記の表の計算結果は、あっています。

食い違いが生じるのは、全国と税関別の集計結果が調整されているからです。よくある質問 の25番にあるように、販売価格等をしられたくない場合には、統計にのせないことも可能なために、この食い違いがでます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0