查看原文
其他

接力《发哨子的人》Stata版

爬虫俱乐部 Stata and Python数据分析 2022-03-15

本文作者:薛   原

文字编辑:孙晓玲

技术总编:张计宝

今天,我们用Stata来接力《发哨子的人》。我们提前将《发哨子的人》全文转换成了十进制的数字,存储在了fszdr.xlsx文件中。在这里首先从爬虫俱乐部的腾讯云获得所需要的数据。

clearcopy "https://stata-club-1257787903.cos.ap-chengdu.myqcloud.com/fszdr.xlsx" "fszdr.xlsx", replacecopy "https://stata-club-1257787903.cos.ap-chengdu.myqcloud.com/photo.png" "photo.png", replace

我们可以用uchar()函数将这些数字转换回汉字,并将结果输出到.docx文档中。完整程序如下:

import excel using "fszdr.xlsx", first cleargen char = uchar(deci)keep charforvalues i = 2/`=_N' { replace char = char + char[`i'] in 1}keep in 1replace char = ustrregexra(char, "\r\n", "xxxxxxxxxx")split char, p("xxxxxxxxxx")drop charsxpose, clearputdocx clearputdocx beginforvalues i = 1/`=_N' { putdocx paragraph, font("华文楷体", 14) putdocx text (`"`=_var1[`i']'"')}putdocx save "发哨子的人.docx", replaceshellout "发哨子的人.docx"

然而当我们打开输出的文档后,却发现全是“乱码”。这是因为我们对内容做了简单的“加密”,只需要在读入excel后,将每个数字都加上1000,再进行转换,就可以显示正常内容了。我们还将艾医生的照片添加到文档中,完整程序如下:

clearimport excel using "fszdr.xlsx", firstreplace deci = deci + 1000gen char = uchar(deci)keep charforvalues i = 2/`=_N' { replace char = char + char[`i'] in 1}keep in 1replace char = ustrregexra(char, "\r\n", "xxxxxxxxxx")split char, p("xxxxxxxxxx")drop charsxpose, clearputdocx clearputdocx beginputdocx paragraph, halign(center)putdocx image "photo.png"forvalues i = 1/`=_N' { putdocx paragraph, font("华文楷体", 14) putdocx text (`"`=_var1[`i']'"')}putdocx save "发哨子的人.docx", replaceshellout "发哨子的人.docx"

删得掉的是推文、帖子,删不掉的是我们对英雄的敬意。让我们每个人接过这根接力棒,让正义的哨声响遍神州大地。







对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
批量实现WORD转PDF

Stata有问必答环节

我听到了企业的哀鸣
“物以类聚”、“近朱者赤”——机器学习初探之KNN
SFI:Stata与Python的数据交互手册(二)

从流调数据中寻找感染真相

熟悉又陌生的reshape

NBA球员薪资分析——基于随机森林算法(二)

NBA球员薪资分析——基于随机森林算法(一)

高亮输出之唐诗作者

湖北省各市疫情数据爬取

古代诗人总去的这些地方你一定要知道!

DataFrame数组常用方法(二)

ftools命令——畅游大数据时代的加速器

卫健委的“糊涂账”

Pandas中数据的排序与切片

DataFrame数组常用方法

巧用局部宏扩展函数dir

关于我们



微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata和python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存