首先我们使用上次课的代码处理“整理结果3.xlsx”:
# 处理 “整理结果3.xlsx” |
由于之前我分享的县域统计年鉴数据都是使用的 2020 年行政区划代码,所以这次我们也同样。
2020 年行政区划代码可以从地理矢量数据得到(为了方便绘制地图):
library(sf) |
首先匹配下看看能成功多少:
# tidylog 包的 join 族函数可以显示匹配效果: |
查看匹配失败的:
# 查看匹配失败的 |
可以看到很多是由于空格和杂乱字符导致的匹配失败,所以我们先去除:
df4 %>% |
可以看到这个时候匹配不成功的就不是很多了,下面我们需要结合百度和 countycode1.dta 来逐个检查修正:
DT::datatable(countycode1) |
这里建议先保存成一个 xlsx 文件,然后在 Excel 里面进行更正:
df4 %>% |
这个时候就没有不匹配的了:
df4 %>% |
然后我们再对变量进行重命名(和之前年份的保持一致):
df5 %>% |
最后如果你想把该数据和之前年份的合并起来,只需要使用 bind_rows()
合并即可。
最后我们再使用该数据绘制一幅区县地图。这里使用的数据是我之前编辑过的一份 shp 数据。可以用于绘制带九段线小地图的中国地图。
library(ggspatial) |
以地区生产总值为例:
df6 %>% |
缺失值使用所在市、所在省的均值填补,实在无法填补的设定为 -1:
countymap %>% |
下面我们将绘制两种地图,一种是使用连续变量绘制,另一种是使用分类变量绘制,为此,我们对地区生产总值变量进行分组:
# v 的范围 |
countyline 变量还需要再处理下:
countyline %>% |
连续变量的绘制:
# 绘制连续变量 |
分类变量的绘制:
# 绘制分类变量 |
需要注意县域统计年鉴并不包含市辖区的数据,仅仅包含大概 2000 多个县的数据。
最近又给大家分享了 2022 年县域统计年鉴的原始数据和整理课程:
按照上面两个课程的整理方法即可得到 2022 年县域统计年鉴中的县市社会经济指标数据了,然后把处理得到的数据和 1999~2020年县市社会经济指标.dta
append 起来即可得到 1999~2021 年的面板数据了。
下面选择 2020 年 户籍人口_人
、一般公共预算收入_万元
和 一般公共预算支出_万元
三个变量进行绘图展示:
上图中部分缺失值使用了该县所处省份的均值进行了填补。该数据里面并没有市辖区的数据(市辖区的数据在城市统计年鉴中),数据里面的区是之前的县改的。
很久之前就出过一个直播课程讲解如何整理县域统计年鉴数据:
县域统计年鉴是如何整理的?Stata 和 R 齐上阵!:https://rstata.duanshu.com/#/brief/course/ce084094d5ac4a9cbd5fd61960545f47
这一次为了方便大家进行数据核对,还在附件中提供了处理过程和原始数据:
大家在使用过程中遇到的问题可以和原始数据比对下看看是处理的问题还是原始数据就有问题。
为了方便使用,我把数据中的行政区划(省、省代码、市、市代码、县、县代码)统一到了 2020 年,不过有一些县早已撤销或者合并到其他区县,这些县使用其被撤销年份的行政区划代码,例如:
所以上面的地图也是使用县代码变量和县级地图数据合并绘制的,相关代码也可以从附件中找到。
该册子一共包含了 40 个 Stata 的绘图案例:
多数内容带课程讲解,感兴趣的小伙伴可以到平台上观看学习(点击文末的阅读原文即可跳转):
https://rstata.duanshu.com/#/brief/course/5cc858d3b49e47b99fc9b9f41828da81
为了方便大家翻阅和学习,大家也可以私信我预定打印纸质版(限培训班会员预定):
其他的讲义材料还有这些:
]]>该册子一共包含了 36 个 R 语言地理计算与地理数据可视化的案例:
多数内容带课程讲解,感兴趣的小伙伴可以到平台上观看学习(点击文末的阅读原文即可跳转):
https://rstata.duanshu.com/#/brief/course/5dee5f29f36344f3be82aca0a20820bd
为了方便大家翻阅和学习,大家也可以私信我预定打印纸质版(限培训班会员预定):
其他的讲义材料还有这些:
]]>该册子一共包含了 38 个 Stata 编程的案例:
多数内容带课程讲解,感兴趣的小伙伴可以到平台上观看学习(点击文末的阅读原文即可跳转):
https://rstata.duanshu.com/#/brief/course/39341829401b45b99e93ee566ed902c8
为了方便大家翻阅和学习,大家也可以私信我预定打印纸质版(限培训班会员预定):
其他的讲义材料还有这些:
]]>今天我们分享一份工企与海关数据的匹配结果,借鉴相关文献,工企与海关的匹配可以分为下面 5 个步骤:
关于这五个步骤的代码实现,可以学习我们之前推出的 Stata 课程:「如何匹配海关和工企数据?」:
如何匹配中国工业企业数据库和海关数据库?以 2013 年为例:https://rstata.duanshu.com/#/brief/course/5463b8d7afcb438ca1e537fa76c1a45d
这次分享的数据包含下面两种版本的:
两个版本的结果数据使用的匹配方法是一样的,但是由于细微的差异,结果也有细微的差异,下表展示的是匹配效果。工企数据库中的工企数量
列展示的是匹配使用的工企数据库的每年样本数;汇总版本涉及的工企数量
列展示的是汇总版本匹配结果中涉及的工企数量,最后一列是匹配率(汇总版本涉及的工企数量 / 工企数据库中的工企数量):
年份 | 工企数据库中的工企数量 | 汇总版本涉及的工企数量 | 匹配率 |
---|---|---|---|
2000 | 162872 | 22310 | 13.7% |
2001 | 171254 | 26446 | 15.4% |
2002 | 181542 | 29943 | 16.5% |
2003 | 196206 | 34096 | 17.4% |
2004 | 279011 | 52966 | 19.0% |
2005 | 270023 | 53475 | 19.8% |
2006 | 301930 | 61467 | 20.4% |
2007 | 336732 | 89237 | 26.5% |
2008 | 412212 | 73364 | 17.8% |
2009 | 366130 | 64562 | 17.6% |
2010 | 442539 | 77420 | 17.5% |
2011 | 302593 | 59789 | 19.8% |
2012 | 324604 | 79824 | 24.6% |
2013 | 344875 | 83893 | 24.3% |
2014 | 309138 | 60068 | 19.4% |
下图会更直观:
如果大家想自行匹配的话,可以使用文初提到的两个数据,然后参考课程匹配。
为了更好的确认匹配数据的可靠性,我们计算了每年平均各个公司的进口额和出口额,如下图所示:
感觉连续性还不错!
另外这两份数据都非常大,已经拆分成了逐年的数据,可以直接使用 append 进行合并(Stata),数据格式是也是仅提供供 Stata 读取的 dta 格式。
关于汇总版如何合并成面板数据,可以参考这个课程:
如何仿照 Brandt 方法把工企数据匹配成面板?:https://rstata.duanshu.com/#/brief/course/a3e155a19934433ab90913f1547b8300
此次分享的数据还有一份:ID 对照表。提供这份数据的原因在于很多小伙伴的电脑内存不大,没法读取完整版本的结果(很多年份的完整版本有 20多 GB),另外也提供了一份分拆的海关数据(很多年份的完整版本有 20 多 GB,这样把每个年份的也都拆分成小文件更方便大家操作)。
尽管如此,还是担心大家的电脑无法读取这份大数据,所以我还提供了一份完整版的小文件分拆版(每个文件不到 2GB)。
下面再展示下部分的数据预览:
]]>该册子一共包含了 35 个 R 语言绘图的案例:
多数内容带课程讲解,感兴趣的小伙伴可以到平台上观看学习(点击文末的阅读原文即可跳转):
https://rstata.duanshu.com/#/brief/course/7ae88332ac7845e2a1f78551d394e611
更多精美图表的绘制欢迎购买 RStata 会员学习:
为了方便大家翻阅和学习,大家也可以私信我预定打印纸质版(限培训班会员预定):
其他的讲义材料还有这些:
]]>首先我们使用上次课的代码处理“整理结果3.xlsx”:
cd "~/Desktop/Stata:如何为区县名称添加行政区划代码" |
由于之前我分享的县域统计年鉴数据都是使用的 2020 年行政区划代码,所以这次我们也同样。
2020 年行政区划代码可以从地理矢量数据得到(为了方便绘制地图):
*- 由于之前的县域数据都是使用的 2020 年行政区划代码,所以这次我们依然使用 2020 的: |
首先匹配下看看能成功多少:
use data4, clear |
可以看到很多是由于空格和杂乱字符导致的匹配失败,所以我们先去除:
use data4, clear |
可以看到这个时候匹配不成功的(_merge==1
)就不是很多了,下面我们需要结合百度和 countycode1.dta 来逐个检查修正:
*- 然后就要一个个修改了 |
然后重新匹配试试:
*- 重新匹配试试 |
然后我们再对变量进行重命名(和之前年份的保持一致):
use data5, clear |
最后如果你想把该数据和之前年份的合并起来,只需要 use 之前年份的数据,然后 append using "2021年县市社会经济指标.dta"
即可。
最后我们再使用该数据绘制一幅区县地图:
*- 把 “2021年县市社会经济指标.dta” 文件放到 “使用Stata绘制中国县级地图(版本2020mini)” 文件夹里面: |
Feature Engineering and Selection: A Practical Approach for Predictive Modelsv
Interactive web-based data visualization with R, plotly, and shiny
# devtools::install_github("mattflor/chorddiag") |
knitr::opts_chunk$set(dev = "cairo_pdf") |
TmTheme Editor:Sublime Text 的主题文件编辑器,也可以用来生成 RStudio 的。
里面有很多非常好的地理、环境数据,例如平台上 1984~2020 年中国各省市区县夜间灯光面板数据 的原始栅格数据就是从这里下载的:中国长时间序列逐年人造夜间灯光数据集(1984-2020)
该数据是免费下载的,介绍可以参考这个推文:干货分享 | 全球水文数据集(流域、河网、湖泊等)
Global gridded GDP data set consistent with the shared socioeconomic pathways
CO2 emissions from fossil fuel combustion, cement production and gas flaring
Global gridded GDP data set consistent with the shared socioeconomic pathways
Introduction to Econometrics with R:一本介绍 R 语言中常见计量经济学模型实现方法的书。
An Introduction to Spatial Data Analysis and Statistics: A Course in R:地理数据分析与统计导论
Geocomputation with R:使用 R 语言进行地理计算(平台上的 R 语言地理计算系列课程就是根据这本书开设的)
Geospatial Data Science With R: Applications in Environmental Geography:使用 R 的地理空间数据科学:在环境地理学中的应用
exaexa/scattermore: very fast scatterplots for R:R 语言中快速绘制散点图的方法,据作者描述,是基础方法的 20 倍速度。
googleVis examples • googleVis:googleVis 包的使用案例,一个用以绘制交互式图表的 R 包。
The sftime Package:处理含有时间维度的空间矢量数据。
Network Visualization Examples with the ggplot2 Package:使用 ggplot2 进行网络可视化的例子。
Simple Easy Beginners Web Scraping in R with {ralger} · Programming with R:使用 ralger 进行网络数据爬取。
建议加入到电脑的收藏夹里面!
这个应用是根据 ColorBrewer 网站修改之后部署到我的服务器上的,特别适合 R 语言和 Stata 用户使用,另外还增加了不少颜色选择,使用起来非常方便。
在左上角有个 Number of data classes,可以下拉选择所需要的颜色数量,不同的调色板最大可选择的颜色数量可能是不同的:
只有少数调色板可以选择 16、34、51 种颜色,例如 scico1 和 scico2 系列的。
比起 ColorBrewer,我增加了很多调色板:
其中只有第一行的 sequential、diverging 和 qualitative 三个是 ColorBrewer 的调色板,其他的都是我增加的,其中 ggsci 和 scico 两个是我最常用的,是两个 R 包的名字,例如 scico 包的调色板有这些:
scico::scico_palette_show() |
使用这个网页应用可以快速预览这些调色板的配色效果。例如之前的夜间灯光地图使用的就是 lajolla 调色板:
平台上这个色系的预览效果:
这个应用特别针对 Stata 和 R 语言的用户进行了设计。例如对于 Stata 用户,经常需要一系列的 RGB 颜色,可以这样设置:
点击 RStata 就可以展开这个窗口了。
Stata 通常使用 RGB 颜色,所以这里需要选择 RGB,然后点击 RStata 拉出结果窗口就可以复制这些颜色值了。
例如在数据分享 中债国债到期收益率期限结构 (截止 2021 年 9 月 20 日) 数据中有这么一幅图:
这幅图需要很多颜色来表示不同的线条,就可以使用这个网页应用进行颜色选择,例如我们选择 tidyquant 里面的 10-class Light 调色板:
这 10 种颜色的值分别是:”44 62 80” “227 26 28” “24 188 156” “204 190 147” “166 206 227” “31 120 180” “178 223 138” “251 154 153” “253 191 111” “255 127 0”,在 Stata 中可以这样使用:
use "中债国债到期收益率数据(截止2021年9月20日).dta", clear |
也就是直接把 10 中颜色的 RGB 值拷贝到 lc() 选项里面就可以了。
如果你是 R 语言用户,建议使用 HEX 颜色值,这个之后把 RGB 改成 HEX 即可:
R 语言的绘图代码如下:
library(tidyverse) |
也就是直接把 HEX 颜色值直接复制粘贴到 scale_color_manual()
里面即可!是不是也很方便。
例如在 Stata 绘制地图中使用,下面的案例展示了如何使用 Stata 绘图展示 2019 年中国各省市地区生产总值:
这里使用的是 ggsci2 中的 10-class teal_material:
完整的 Stata 绘图代码如下:
import delimited using "2020年中国各省市地区生产总值.csv", clear encoding(utf8) |
上面代码中的 fcolor() 就是使用这个网页应用生成的。
R 语言绘制地图的案例上面就有了:
这个图的绘制方法可以学习课程:「使用 R 语言绘制中国夜间灯光地图」
RStata 标准数据服务之专利数据匹配服务来啦!就是您提供一些公司的名称,然后我们帮您使用公司名称从专利数据库里面匹配筛选专利,另外还可以进一步进行绿色专利筛选、专利知识宽度计算!
专利申请量可以反映一家公司的创新能力,之前给大家分享过工企和专利的匹配结果,不过由于完整的专利数据库非常庞大,难以处理,所以暂时还不打算把专利数据公开分享,不过经常有小伙伴询问是否能帮忙匹配,最近尝试了下,感觉还是可行的,因此特推出专利数据匹配服务,收费如下:
例如您有 20 万家公司想要匹配专利数据,就是 2 * 300 = 600 元,如果还需要计算专利知识宽度,需要再增加 2 * 100 = 200 元,合计 800 元。
注意:不使用模糊匹配,而是去除企业名称中无用的关键词进行精确匹配,例如“有限公司”、“有限责任公司”、“股份有限公司”这样的字眼。之所以这样做,大家可以学习这个课程了解:
另外平台上已有的专利相关数据有:
相关课程:
更多相关课程敬请期待~
]]>简而言之,这次的数据是首先把气象站点的数据插值成 0.1˚x0.1˚ 分辨率的网格数据,然后把网格数据转换成栅格数据再分区域平均得到各省市区县的年度、月度和日度数据。
以 2020 年 6 月 1 日日照时数的处理为例,首先是该天所有气象站点的日照时数数据:
使用 IDW 法插值成 0.1˚x0.1˚ 分辨率的网格数据:
把插值得到的网格数据转换成栅格数据:
栅格数据分区域汇总就可以得到省市区县的数据了,例如区县的:
按照上面的处理思路循环处理 1980年1月1日~2020年12月31日的数据即可得到 1980~2020 年中国各省市区县分年、分月、逐日的日照时数数据了,为了方便大家的使用,我把数据保存成了 xslx 格式的:
每份数据都包含各级行政区划代码,方便大家和其他数据集进行匹配,作为参考,下图展示了 2020 年中国各区县日照时数数据:
2020 年 6 月 1 日各城市日日照时数数据:
2020 年 6 月各省份日照时数:
由于这次处理过程中生成了栅格数据,所以附件中也有每天的栅格数据:
最后的这个图展示了 1980~2020 年中国各省市年日照时数的变化:
从图上可以看到,符合东南少而西北多,从东南向西北增加的特点。百度百科上的介绍如下:
由于日照时数可能受到地形、植被、水文、人类活动等因素的影响,因此使用上文所说的方法计算得到的各区域均值可能与实际值有所偏差。
之前的老版本数据有处理方法讲解:
新版数据的处理方法讲解课程敬请期待!
以 2020 年 6 月 1 日降水量的处理为例,首先是该天所有气象站点的降水量数据:
使用 IDW 法插值成 0.1˚x0.1˚ 分辨率的网格数据:
把插值得到的网格数据转换成栅格数据:
栅格数据分区域汇总就可以得到省市区县的数据了,例如区县的:
按照上面的处理思路循环处理 1980年1月1日~2020年12月31日的数据即可得到 1980~2020 年中国各省市区县分年、分月、逐日的累计降水量数据了,为了方便大家的使用,我把数据保存成了 xslx 格式的:
每份数据都包含各级行政区划代码,方便大家和其他数据集进行匹配,作为参考,下图展示了 2020 年中国各区县平均降水量数据:
2020 年 6 月 1 日各城市平均降水量数据:
2020 年 6 月各省份累计降水量:
由于这次处理过程中生成了栅格数据,所以附件中也有每天的栅格数据:
最后的这个图展示了 1980~2020 年中国各省市年累计降水量的变化:
从图上可以看到,符合南方雨水多,北方雨水少的特点。
由于降水量可能受到地形、植被、水文、人类活动等因素的影响,因此使用上文所说的方法计算得到的各区域均值可能与实际值有所偏差。
之前的老版本数据有处理方法讲解:
新版数据的处理方法最近会推出课程讲解,敬请期待!
老师,分面facet的时候,想把每个小图的标题带个特殊符号该怎么操作呢。举个例子,原来分面出来的标题是1/2/3现在想改成1℃/2℃/3℃
解决方法有很多,这里提供一种。
首先我们找个绘制分面图的案例:
library(tidyverse) |
为了演示如何在小图的标题上添加摄氏度符号,我们把 Species 变量替换下:
unique(iris$Species) |
这里的 °
在 HTML 里面表示摄氏度的小圆圈,然后我们可以使用 ggtext 包的 element_textbox() 元素:
iris2 %>% |
再例如:
iris2 %>% |
下面是一些的 HTML 特殊符号的表示方法:
符号 | 说明 | 对应编码(使用时去掉&后的空格) | 英文读法 |
---|---|---|---|
& | AND 符号 | & amp; | ampersand |
< | 小于 | & lt; | little |
·> | 大于 | & gt; | great |
| 不断行的空白格 | & nbsp; | number space |
| 半方大的空白 | & ensp; | |
| 全方大的空白 | & emsp; | |
¿ | 倒问号 | & iquest; | inverted question |
? | 问号 | & quest; | question |
« | 左书名号 | & laquo; | left angle quote |
» | 右书名号 | & raquo; | right angle quote |
“ | 引号 | & quot; | quote |
‘ | 左单引号 | & lsquo; | left single quote |
’ | 右单引号 | & rsquo: | right single quote |
“ | 左双引号 | & ldquo: | left double quote |
” | 右双引号 | & rdquo: | right double quote |
¶ | 段落符号 | & para; | paragraph |
§ | 章节符 | & sect; | section |
× | 乘号 | & times; | times |
÷ | 除号 | & divide; | divide |
± | 加减号 | & plusmn; | plus minus |
ƒ | function | & fnof; | |
√ | 根号 | & radic; | radic |
∞ | 无穷大 | & infin; | infinite |
° | 度 | & deg; | degree |
≠ | 不等号 | & ne; | ne |
≡ | 恒等于 | & equiv; | equivalent |
≤ | 小于等于 | & le; | less than or equal to |
≥ | 大于等于 | & ge; | great than or equal to |
⊥ | 垂直符号 | & perp; | perpendicular |
← | 左箭头 | & larr; | left arrow |
→ | 右箭头 | & rarr; | right arrow |
↑ | 上箭头 | & uarr; | up arrow |
↓ | 下箭头 | & darr; | down arrow |
↔ | 水平箭头 | & harr; | horizontal arrow |
↕ | 竖直箭头 | & varr; | vertical arrow |
⇐ | 双线左箭头 | & lArr; | left arrow |
⇒ | 双线右箭头 | & rArr; | right arrow |
⇑ | 双线上箭头 | & uArr; | up arrow |
⇓ | 双线上箭头 | & dArr; | down arrow |
⇔ | 双线水平双箭头 | & hArr; | horizontal arrow |
⇕ | 双线竖直箭头 | & vArr; | vertical arrow |
♠ | 黑桃 | & spades; spades | |
♥ | 红桃 | & hearts; | hearts |
♣ | 梅花 | & clubs; | club |
♦ | 方块 | & diams; | diamonds |
© | 版权 | & copy; | copy right |
® | 注册商标 | & reg; | registration |
™ | 商标 | & trade; | trade |
¥ | 人民币 | & yen; | |
€ | 欧元 | & euro; | euro |
¢ | 美分 | & cent; | cent |
£ | 英磅 | & pound; | pound |
⊕ | & oplus; | ||
½ | 二分之一 | & frac12; | fraction |
¼ | 四分之一 | & frac14; | fraction |
‰ | 千分符号 | & permil; | per mille |
∴ | 所以 | & there4; | there fore |
π | 圆周率 | & pi; | |
¹ | 商标 1 | & sup1; | super 1 |
α | alpha | & alpha; | alpha |
β | beta | & beta; | beta |
γ | gamma | & gamma; | gamma |
δ | delta | & delta; | delta |
θ | theta | & theta; | theta |
λ | lambda | & lambda; | lambda |
σ | sigma | & sigma; | sigma |
τ | tau | & tau; | tau |