楼主: 皖山一流
737 0

自如自乐小命令:取出观察值中的数字 [推广有奖]

  • 4关注
  • 13粉丝

已卖:216份资源

讲师

25%

还不是VIP/贵宾

-

威望
0
论坛币
2357 个
通用积分
156.2410
学术水平
73 点
热心指数
80 点
信用等级
54 点
经验
16517 点
帖子
352
精华
0
在线时间
308 小时
注册时间
2013-12-9
最后登录
2021-1-21

楼主
皖山一流 学生认证  发表于 2014-12-30 23:26:15 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
程序说明:如果变量中有类似这样的观察值:&388&8*3¥#lj号89996%799^3

我这个小程序就是将数字取出来,得到:38883899967993
语法:capnum  varname
代码:
  1. cap program drop capnum
  2. pro define capnum
  3. version 13.0
  4. syntax varlist
  5. tokenize `varlist'
  6. loc vn : word count `varlist'
  7. forval var=1/`vn'       {
  8.         loc i=1
  9.         while `i'<=_N  {
  10.                 loc n=""
  11.                 if indexnot(``var''[`i'],"0123456789") != 0  {
  12.                         loc m=length(``var''[`i'])
  13.                         forval j=1/`m'  {
  14.                                 loc a=substr(``var''[`i'],`j',1)
  15.                                 if indexnot("`a'","0123456789") == 0  {
  16.                                         loc n=plural(0,"`n'","+`a'")
  17.                                 }
  18.                                 loc ++j
  19.                         }
  20.                         qui     replace ``var''="`n'"  in `i'
  21.                 }
  22.                         loc ++i
  23.         }
  24. }
  25. end
复制代码


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:varlist Version Program DEFINE SYNTAX stata 字符 数字 取出

士不可不弘毅,任重而道远~

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-18 06:27