国家统计局指标数据深入分析

article/2025/10/14 0:41:38

国家统计局指标数据深入分析

  • 统计局指标数据结构分析
  • 国家统计局数据集
    • 行政区划
    • 指标数据
      • 常见指标id
      • 如何从统计局网站获取指标ID
      • 查询示例
    • 开始查询

国家统计局的数据给许多人的工作和学习提供了丰富且权威的数据。但提供的数据获取方式不尽如人意,因此在网上能找到各种爬取数据的教程。

但这些教程也未必就方便使用,原因有2:

  • 爬取教程涉及到代码,通常为PYTHON,使用者需要有一定的编程基础,并且需要安装相对于的包,还是有一定的门槛。
  • 即便代码能运行起来,爬取数据本身也耗费人力,而且还经常容易出错
    数据爬取教程是授人以渔,本文则授人以鱼。直接给数据,不仅给数据,还提供在线分析和可视化的能力,一站式解决各位数据下载分析的需求。

统计局指标数据结构分析

国家统计局数据集

数据采集自中国国家统计局网站(http://www.stats.gov.cn/),表名以nbs开头。

行政区划

表名为nbs_regions, 该数据为中国5级行政区划信息,包含地区之间律属关系。分省指标数据引用该数据,reg字段即为该表的code字段。数据采集自这个2021版公告。数据示例:

+--------------+-------+--------------+---------------+--------------------------+
| code         | level | parent_code  | classify_code | name                     |
+--------------+-------+--------------+---------------+--------------------------+
| 11           |     1 |              |               | 北京市                   |
| 110100000000 |     2 | 11           |               | 市辖区                   |
| 110101000000 |     3 | 110100000000 |               | 东城区                   |
| 110101001000 |     4 | 110101000000 |               | 东华门街道                |
| 110101001001 |     5 | 110101001000 | 111           | 多福巷社区居委会          |
+--------------+-------+--------------+---------------+--------------------------+

注意:对于level=1的数据有一份重复的,例如北京市有两条记录,分别是code=11和code=110000,这主要是为了与分省数据配合,分省数据中的reg采用的是6位code,而行政区划数据本身是2位

数据表的定义(DDL)为:

 CREATE TABLE `nbs_regions` (`code` varchar(16) COLLATE utf8_unicode_ci NOT NULL COMMENT '统计用区划代码',`level` tinyint(4) DEFAULT NULL COMMENT '行政级别,如湖北省是1级,武汉市是2级,以此类推',`parent_code` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '上一级行政区划的代码,例如黄冈市的代码为421100000000, 它的上级为湖北省,代码42',`classify_code` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '城乡分类代码',`name` varchar(64) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '名称,如多福巷社区居委会',PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='全国统计用区划代码和城乡划分代码'

查询示例,例如需要查询北京东城区的行政区划代码:

select code from nbs_regions where name='东城区';
+--------------+
| code         |
+--------------+
| 110101000000 |
+--------------+

查询北京东城区所有的街道:

select name from nbs_regions where parent_code='110101000000';
+--------------------+
| name               |
+--------------------+
| 东华门街道         |
| 景山街道           |
| 交道口街道         |
| 安定门街道         |
| 北新桥街道         |
| 东四街道           |
| 朝阳门街道         |
| 建国门街道         |
| 东直门街道         |
| 和平里街道         |
| 前门街道           |
| 崇文门外街道       |
| 东花市街道         |
| 龙潭街道           |
| 体育馆路街道       |
| 天坛街道           |
| 永定门外街道       |
+--------------------+

指标数据

指标数据为国民经济和社会各项指标的数据,例如CPI, GDP, PPI等。根据时间和地区维度,又分为如下6类:

  • 宏观年度(hgnd)
  • 宏观季度(hgjd)
  • 宏观月度(hgyd)
  • 分省年度(fsnd)
  • 分省季度(fsjd)
  • 分省月度(fsyd)

每一类又分为指标定义表,和数据表。指标定义表定义了指标的含义、度量单位、在指标体系中的层级等信息;数据表即为指标的具体数据。两者通过id字段关联。

类别指标定义表指标数据表
宏观年度nbs_zb_hgnd_dimnbs_zb_hgnd_data
宏观季度nbs_zb_hgjd_dimnbs_zb_hgjd_data
宏观月度nbs_zb_hgyd_dimnbs_zb_hgyd_data
分省年度nbs_zb_fsnd_dimnbs_zb_fsnd_data
分省季度nbs_zb_fsjd_dimnbs_zb_fsjd_data
分省月度nbs_zb_fsyd_dimnbs_zb_fsyd_data

6类指标定义表的结构完全一致,这里仅展示nbs_zb_hgnd_dim表:

CREATE TABLE `nbs_zb_hgnd_dim` (`id` varchar(16) COLLATE utf8_unicode_ci NOT NULL COMMENT '指标的唯一id',`level` tinyint(4) DEFAULT NULL COMMENT '指标的层级,越小层级越高',`name` varchar(96) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '指标的 名称',`unit` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '单位',`node_sort` int(11) DEFAULT NULL,`sort_code` int(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='宏观年度统计指标的定义'

数据示例:

select * from nbs_zb_hgnd_dim limit 3;
+---------+-------+-----------------+------+-----------+-----------+
| id      | level | name            | unit | node_sort | sort_code |
+---------+-------+-----------------+------+-----------+-----------+
| A01     |     1 | 综合            |      |         0 |         0 |
| A0101   |     2 | 行政区划        |      |         0 |         0 |
| A010101 |     3 | 地级区划数      | 个   |         1 |         2 |
+---------+-------+-----------------+------+-----------+-----------+

注意:id相同的指标,在不同的类别中具有不同的含义。 例如id=A020102的指标,在不同表的含义如下:

  • nbs_zb_hgnd_dim: 国内生产总值
  • nbs_zb_hgjd_dim: 农业总产值_累计值
  • nbs_zb_hgyd_dim: 工业增加值_累计增长
  • nbs_zb_fsnd_dim: 第一产业增加值
  • nbs_zb_fsjd_dim: 装饰装修产值_累计值
  • nbs_zb_fsyd_dim: 工业增加值_累计增长

宏观数据表与分省数据表定义不一致,分省数据表多了一个地区字段(reg)。这里以宏观年度和分省年度表作为示例。

CREATE TABLE `nbs_zb_hgnd_data` (`id` varchar(16) COLLATE utf8_unicode_ci NOT NULL COMMENT '指标id',`sj` date NOT NULL COMMENT '时间,如2020-01-01,表示2020年',`val` double DEFAULT NULL COMMENT '指标的值,NULL表示没有数据',PRIMARY KEY (`id`,`sj`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='宏观年度指标数据'

数据示例

 select * from nbs_zb_hgnd_data limit 3;
+---------+------------+------+
| id      | sj         | val  |
+---------+------------+------+
| A010101 | 1980-01-01 |  318 |
| A010101 | 1981-01-01 |  316 |
| A010101 | 1982-01-01 |  322 |
+---------+------------+------+
CREATE TABLE `nbs_zb_fsnd_data` (`id` varchar(16) COLLATE utf8_unicode_ci NOT NULL COMMENT '指标id',`reg` varchar(13) COLLATE utf8_unicode_ci NOT NULL COMMENT '省份id, 如北京为110000, 河北为130000',`sj` date NOT NULL COMMENT '时间,如2020-01-01,表示2020年',`val` double DEFAULT NULL COMMENT '指标的值,NULL表示没有数据',PRIMARY KEY (`id`,`reg`,`sj`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='分省年度指标数据'

数据示例

select * from nbs_zb_fsnd_data limit 3;
+---------+--------+------------+------+
| id      | reg    | sj         | val  |
+---------+--------+------------+------+
| A010101 | 110000 | 1970-01-01 | NULL |
| A010101 | 110000 | 1971-01-01 | NULL |
| A010101 | 110000 | 1972-01-01 | NULL |
+---------+--------+------------+------+

其中reg字段为nbs_regions表的code字段。

常见指标id

为了方便大家查找常用的指标,现将常用指标的id列举如下:

表名id含义单位
nbs_zb_hgnd_dimA020102国内生产总值亿元
nbs_zb_hgnd_dimA02020102国内生产总值指数(上年=100)
nbs_zb_hgyd_dimA01010101居民消费价格指数(上年同月=100)
nbs_zb_hgyd_dimA01080101工业生产者出厂价格指数(上年同月=100)
nbs_zb_hgyd_dimA0B0101制造业采购经理指数%
nbs_zb_hgyd_dimA070101社会消费品零售总额_当期值亿元
nbs_zb_hgyd_dimA070103社会消费品零售总额_同比增长%
nbs_zb_hgyd_dimA080101进出口总值_当期值千美元
nbs_zb_hgyd_dimA080102进出口总值_同比增长%
nbs_zb_fsjd_dimA030101居民人均可支配收入_累计值

如何从统计局网站获取指标ID

在国家统计局网站的高级查询页面,选择一个指标,通过浏览器的右键菜单的检查功能,可以查看到指标的ID。具体操作如下:

第一步,打开对应指标的高级查询页面 六类指标的高级查询页面地址分别如下:

  • 宏观年度
  • 宏观季度
  • 宏观月度
  • 分省年度
  • 分省季度
  • 分省月度

第二步,选择指标 可以通过左边导航栏,或者搜索找到目标指标

第三步,右击指标,并选择检查菜单

第四步,在打开的网页代码中,找到对应的指标ID 如下图所示

查找指标ID

查询示例

示例1:自2010年以来GDP增长指数,按时间升序排列

select * from data.nbs_zb_hgnd_data where  id='A02020102' and sj >='2010' order by  sj;
+-----------+------------+-------+
| id        | sj         | val   |
+-----------+------------+-------+
| A02020102 | 2010-01-01 | 110.6 |
| A02020102 | 2011-01-01 | 109.6 |
| A02020102 | 2012-01-01 | 107.9 |
| A02020102 | 2013-01-01 | 107.8 |
| A02020102 | 2014-01-01 | 107.4 |
| A02020102 | 2015-01-01 |   107 |
| A02020102 | 2016-01-01 | 106.8 |
| A02020102 | 2017-01-01 | 106.9 |
| A02020102 | 2018-01-01 | 106.7 |
| A02020102 | 2019-01-01 |   106 |
| A02020102 | 2020-01-01 | 102.2 |
| A02020102 | 2021-01-01 | 108.1 |
+-----------+------------+-------+

示例2:对比自2021年以来CPI和PMI指数,按时间升序排列

select cpi.sj, cpi.val cpi , pmi.val pmi from data.nbs_zb_hgyd_data cpi join 
(select sj,  val from data.nbs_zb_hgyd_data where id='A0B0101' and sj >='2021-01-01') pmi  
on (cpi.sj = pmi.sj) where cpi.id='A01030101' and cpi.sj >='2021-01-01' order by cpi.sj+------------+-------+------+
| sj         | cpi   | pmi  |
+------------+-------+------+
| 2021-01-01 |   101 | 51.3 |
| 2021-02-01 | 100.6 | 50.6 |
| 2021-03-01 |  99.5 | 51.9 |
| 2021-04-01 |  99.7 | 51.1 |
| 2021-05-01 |  99.8 |   51 |
| 2021-06-01 |  99.6 | 50.9 |
| 2021-07-01 | 100.3 | 50.4 |
| 2021-08-01 | 100.1 | 50.1 |
| 2021-09-01 |   100 | 49.6 |
| 2021-10-01 | 100.7 | 49.2 |
| 2021-11-01 | 100.4 | 50.1 |
| 2021-12-01 |  99.7 | 50.3 |
+------------+-------+------+

示例3:查询江苏省自2020年来季度居民人均可支配收入,按时间升序排列

select sj, val from data.nbs_zb_fsjd_data where id='A030101' 
and reg  in (select code from  data.nbs_regions where name='江苏省')  and  sj >='2020-01-01' order by  sj;2020-01-01	13588
2020-04-01	22126
2020-07-01	32667
2020-10-01	43390
2021-01-01	15500
2021-04-01	25119
2021-07-01	36227
2021-10-01	47498
2022-01-01	16490

开始查询

所有的数据,kaifangshuju.com 都已经提供,我们只需去查询,去分析、去下载即可。
在网站的首页,点击国家统计局开始查询链接,在页面的文本框,输入sql语句就可以查了。

  • 不仅可以查单表,还可以多表联合查询。
  • 查询结果可以下载(DOWNLOAD TO CSV),可以可视化(EXPLORE),或者复制到粘贴板(COPY TO CLIPBOARD)
  • 以任意灵活的行列格式输出,无需在EXCEL做烦琐的格式整理了

查询页面如图所示
查询界面


http://chatgpt.dhexx.cn/article/s0Kj1Nrc.shtml

相关文章

数据指标管理

什么是指标? 指标是将业务单元精分和量化后的度量值,使得业务目标可描述、可度量、可拆解。数据指标构成如下: 数据指标体系是对业务指标体系的汇总,用来明确指标的口径、维度、指标的取数逻辑等信息。它的价值体现在: 全面支撑…

【业务数据分析】——数据指标和数据指标体系

🤵‍♂️ 个人主页:Lingxw_w的个人主页 ✍🏻作者简介:计算机科学与技术研究生在读 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 &#x1f4a…

数据分析 常用的数据指标

数据分析 常用的数据指标 数据指标的作用是用来衡量、追踪和监控业务的,对于一项具体的业务来说,它所包含的数据通常有三大类:用户数据(谁)、行为数据(做了什么)、产品数据(对应的产品是什么)。那么,相应的数据指标也可分为三大类…

【数据标准】数据指标体系建立

前沿 数据分析常遇到挑战 问题出在哪里? 当一个决策分析类项目(如商务智能、数据仓库、大数据分析等)开始筹划的时候,往往面临着如何选择分析场景的问题。有一些业务人员非常有想法,目标明确,直接请实施厂…

数据指标体系:指标好坏评价标准

关于指标体系构建的方法论非常多,基于实际业务场景加上方法指导都可以照猫画虎地构建出自己的指标体系。但光有了所谓的指标体系不是终极目标,想要更加高效的数据驱动决策、数据赋能业务运营,指标好坏的评价标准是必不可少的要素。 一、为什…

数据指标是什么?必知必会的数据指标类型都在这了

导读:数据指标体系是构建数据中台的重要一环。数据指标的建立让运营及产品人员更直观地看到基本指标的变动,让数据分析师更便捷地开展数据分析工作。 数据指标就是将大数据之“大”的精髓给提炼出来,展现每日观察数据的使用者最迫切想要看到的…

也就整了一万字的「数据指标体系」指南。

我是小z 数据指标体系是构建数据中台的重要一环。数据指标的建立让运营及产品人员更直观地看到基本指标的变动,让数据分析师更便捷地开展数据分析工作。这篇文章就紧紧围绕“指标体系”展开,内容略干。 数据指标就是将大数据之“大”的精髓给提炼出来&am…

数据分析——常见数据指标汇总

数据分析——常见数据指标汇总 数据分类用户数据指标行为数据指标产品数据指标推广付费指标 数据分类 用户数据:反映用户的基本信息等。 行为数据:做过什么,如页面停留时间,购买等。 产品数据:产品信息、库存等。 用…

学习-数据指标体系

一、什么是数据指标?与数据标签有什么区别? 1.数据指标是反应同类现象总体综合数量特征,用于衡量事物发展程度的单位或方法(例如:利润率),一般通过数据汇总计算方式得到,数据汇总…

74HC573芯片简介

芯片缺口方向 为正,然后左上往下排列,最后一个是GND,然后 向右,再向右上,右上角为Vcc; GND 和Vcc成对角线,是为了防止发生短路。 LE:latch-enable 锁存使能 当LE是高电平,Q&#…

硬件电路设计之电平转换芯片SN74LVC4245A

在设计数字电路的时候,经常会遇到控制电压不一致,尤其是ARM与一些芯片的电平不一致, 比如ARM是5V供电,芯片是3.3V,或者反过来。 虽然有的芯片两种电压兼容,不如STM32系列的ARM在3.3V供电的情况的下仍可以…

串转并芯片74HC595和74HC164的区别

串转并芯片一般用于对于速度要求不是非常严格并且IO资源有限的系统中,可以通过级联的方式轻松地扩展系统的可用输出IO口数量。同样的也可以使用并转串芯片扩展输入IO口的数量。 这里说一说串转并芯片74HC595和74HC164。 首先来看595芯片,如下图所示&…

74hc165介绍

4.5.1并行输入串行输出模块的应用场合 与串行输入并行输出模块相反,当需要将并行信号转换为串行信号输出时,可以使用并行输入串行输出模块。 4.5.2并行输入串行输出模块的应用基础 当并行负载(PL)输入为LOW时,从D0到D7输入的并行数据将异步…

74HC148引脚图及功能

介绍 74148优先编码器为16脚的集成芯片,是一复个八线-三线优先级编码器。除电源脚 VCC(16)和GND(8)外,其余输入、输出脚的作用和脚号如图中所标。制其中 I 0— I 7为输入信号, A2,A1,A0为三位二进制编码输出信号, EI是使能输入端&…

74HC595芯片应用

文章目录 前言一、74HC595芯片管脚定义功能二、74HC595芯片工作原理三、共阳极及共阴极数码管段码四、74HC595驱动代码总结 前言 74HC595芯片是在单片机系统中常用的芯片之一,他的作用就是把串行的信号转为并行的信号,常用在各种数码管以及点阵屏的驱动…

四通道模拟开关 单刀单掷300MHz,替代SN74CBTLV3126、74CBTLV3126

一、特点 •宽带:300MHz •单电源操作1.8V至5.5V •低导通电阻,4.5Ω(典型) •高速:典型30ns •铁路对铁路运营 •TTL/CMOS兼容 •工作温度范围:-40C至125C •包装:SSOP-16、TSSOP-14 二、应用…

74HC595 芯片详细介绍

74HC595是8 位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。三态。 特点: 1,8 位串行输入 2,8 位串行或并行输出 3,存储状态寄存器,三种状态 4,输出寄存器可以直接清除 5&#xff0…

实现74HC4511的功能

VerilogHDL程序设计与仿真作业3: ——实现74HC4511的功能 文章目录 VerilogHDL程序设计与仿真作业3:——实现74HC4511的功能 一、实验目的二、1、设计思路2、实现代码3、测试代码4、仿真 一、实验目的 实现74HC4511的功能 二、 1、设计思路 功能表 …

74HC245的作用

74HC245的作用:信号功率放大。 第1脚DIR,为输入输出端口转换用,DIR“1”高电平时信号由“A”端输入“B”端输出,DIR“0”低电平时信号由“B”端输入“A”端输出。 第2~9脚“A”信号输入输出端,A1B1、、、、、、A8B8&am…

74HC245芯片简析

74HC245 是一种三态输出、八路信号收发器,主要应用于大屏显示。 如图: 该芯片中A0到A7 和 B0到B7既可以作为输入也可以作为输出。 当DIR为高电平时,A为输入,B为输出。 当DIR为低电平时,B为输入,A为输出。 OE为使能控制…