楼主: QiuQ_16
2925 6

[数据管理求助] 如何分别提取出":"前后的数字 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

大专生

51%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
169 点
帖子
18
精华
0
在线时间
83 小时
注册时间
2019-4-21
最后登录
2020-12-6

楼主
QiuQ_16 发表于 2019-10-8 14:02:20 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
数据格式如下:
Var1
300:30:00
50:10
5:0.1
99:50
199:120:00
现想要用Stata分别将第一个冒号前、后的数字提取出来,该如何写命令呢?
望各位大神解答,多谢多谢
二维码

扫码加我 拉你入群

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

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


沙发
黃河泉 在职认证  发表于 2019-10-8 14:52:29
1. 请 help split。 2. 你若要问程序,永远附上相关资料 (请不要用截图);若附上资料,永远用 dataex 印出资料。
1.        先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。
2.        请参考说明 https://bbs.pinggu.org/thread-5048204-1-1.html

藤椅
蓝色 发表于 2019-10-8 15:53:08
new1   new2  就是需要的数值
  1. split Var1, parse(:) gen(new)
复制代码

板凳
QiuQ_16 发表于 2019-11-15 13:08:42
蓝色 发表于 2019-10-8 15:53
new1   new2  就是需要的数值
这样子new1里应该是带有“:”的吧,如何把“:”去掉,变成纯数字呢

报纸
sungmoo 发表于 2019-11-15 16:23:37
g x1=real(word(subinstr(Var1,":"," ",.),1))
g x2=real(word(subinstr(Var1,":"," ",.),2))

地板
黃河泉 在职认证  发表于 2019-11-15 18:29:59
QiuQ_16 发表于 2019-11-15 13:08
这样子new1里应该是带有“:”的吧,如何把“:”去掉,变成纯数字呢
1. 显然你没试过,蓝色版主的指令就是对的 (或许需要 destring),请试试
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input str15 Var1
  4. "300:30:00"
  5. "50:10"     
  6. "5:0.1"     
  7. "99:50"     
  8. "199:120:00"
  9. end

  10. split Var1, parse(:) gen(new)
  11. destring new*, replace
复制代码
2. 你若要问程序,永远附上相关资料 (请不要用截图);若附上资料,永远用 dataex 印出资料。
•        先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。
•        请参考说明 https://bbs.pinggu.org/thread-5048204-1-1.html

7
escaflowne1985 在职认证  发表于 2020-1-3 22:18:19 来自手机
切分就行了

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-29 14:25