楼主: haddy1009
2931 19

[其他] 如何将变量中末尾是X的数据找出来? [推广有奖]

  • 2关注
  • 5粉丝

已卖:1份资源

讲师

17%

还不是VIP/贵宾

-

威望
0
论坛币
5 个
通用积分
1.1266
学术水平
1 点
热心指数
3 点
信用等级
1 点
经验
87 点
帖子
288
精华
0
在线时间
445 小时
注册时间
2007-7-14
最后登录
2021-12-13
毕业学校
南开大学

楼主
haddy1009 发表于 2011-11-14 09:52:33 |AI写论文
20论坛币
我的数据中有个变量是9位数,该变量中的一部分数据的末尾是X,因为在将字符型变量转换成数值时,使用destring命令无法识别x,我想把含有x的那部分数据单独列出来,然后对其进行encode命令转换,想问一下是否有人能帮忙解决这个问题,多谢!
    顺便说一下,数据量多大,所以无法直接用encode,才选择曲线救国,先对数据进行归类。

关键词:destring encode string 字符型变量 tring 如何

沙发
aolei 发表于 2011-11-14 10:09:34
help substr
已有 1 人评分热心指数 收起 理由
haddy1009 + 1 热心帮助其他会员

总评分: 热心指数 + 1   查看全部评分

藤椅
jzhyue 发表于 2011-11-14 10:12:41
如何将变量中末尾是X的数据找出来?
list if substr(var,-1,1)=="X"

板凳
jzhyue 发表于 2011-11-14 10:15:31
因为在将字符型变量转换成数值时,使用destring命令无法识别x
destring var,i(x) replace

报纸
haddy1009 发表于 2011-11-14 10:16:07
刚才突然想到其实可以把末尾的x直接全部替换成000,不知道用什么命令?

地板
haddy1009 发表于 2011-11-14 10:24:57
list if substr(var,-1,1)=="X"
显示结果是这个观测值的所有变量,但是我需要的是把某个变量中含有x的数据找出来,再单独进行encode命令。

7
jzhyue 发表于 2011-11-14 10:42:56
但是我需要的是把某个变量中含有x的数据找出来
list if strpos(var,"x")>0

8
jzhyue 发表于 2011-11-14 10:44:30
刚才突然想到其实可以把末尾的x直接全部替换成000,不知道用什么命令?
replace var=substr(var,1,length(var)-1)+"000" if regexm(var,"X$")
*or
replace var=reverse(var)
replace var=subinstr(var,"X","000",1)
replace var=reverse(var)
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
haddy1009 + 1 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

9
haddy1009 发表于 2011-11-14 11:19:16
replace var=substr(var,1,length(var)-1)+"000",if regexm(var,"x$")
stata提示
option if not allowed

10
haddy1009 发表于 2011-11-14 11:20:17
reverse var
replace var=subinstr(var,"x","000",1)
reverse var
stata提示
unrecognized command:  reverse

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

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