加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Stata技巧 - 使用subinstr()计算子串的数量

(2015-06-15 11:58:31)
标签:

stata

subinstr()

strlen()

子串个数

分类: Stata

问题描述:计算一篇论文中作者的数量;

数据描述:核心变量为Author,如果有多个作者的,中间用逗号分隔。

                 数据形式如下:

                ID       Author

                       H Taras, M Zive, P Nader, CC Berry, T Hoy, C Boyd
                2        C Preston

                       BZ Erdogan, MJ Baker

                ...        ...

 

 

解决思路:1.将问题转化为计数Comma的个数,然后加1得到作者数量。

                 2.Stata中没有直接计算子串个数的函数,但可以配合使用字符串函数实现。

                       a. 将待计数子串全部替换为空串

                       b. 原字符串长度减去新字符串长度即为子串个数

Stata 代码:

gen AuthorNum = strlen(Author) - strlen(subinstr(Author,",","",.)) + 1

 

 

 

 

 

 

 

参考

Cox, Nicholas J. "Stata tip 98: Counting substrings within strings." Stata Journal 11, no. 2 (2011): 318.

原文链接

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有