全部版块 我的主页
论坛 计量经济学与统计论坛 五区 数据交流中心 调查问卷专版
5729 3
2010-04-01
epidata中可以用range 与legal 规定某一变量的允许值,但是当变量有两个非连续的变量允许范围该怎么办?如变量tele的允许范围是5000000-8000000与13000000000-19000000000和0.在此情况下在添加修改录入质控程序时的range,legal栏输入“5000000-8000000,13000000000-19000000000,0”会提示录入了非法值,如果在chk文件中直接写入
“tele
range 5000000 8000000
range 13000000000 19000000000
legal 0
end
mustenter
end”
保存后直接变成
“tele
range 5000000 8000000
legal
13000000000-19000000000
0
end
mustenter
end”
在再次打开rec文件时就会报错“13000000000-19000000000不适合于当前变量”。

请问这是怎么回事?
怎样才能达到我想要的效果?



另是不是在chk中是不是数字型变量不能超过10位?上述的13000000000在保存到chk时没有任何事但到录入时会提示错误“1300000000 is not a vald integer value” ,这不是胡扯吗
二维码

扫码加我 拉你入群

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

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

全部回复
2010-4-2 08:46:55
你这个已经超出了EPIDATA的数据范围了
不知道兄台是什么数据这么庞大
你为什么不转换成科学计数呢?
另外如果是身份证这些建议你考虑字符型
因为字符型可以达到40个字符
二维码

扫码加我 拉你入群

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

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

2010-4-2 13:33:17
谢谢你的回答!
这个数据之所以会达到11位是因为它是电话号码。电话号码有固话有手机所以可能需要设两个允许区间,另如果设成字符型将不能进行指控,还有就是我说的epidata在chk文件中不能容许11位数是指在指控程序中如果出现大于十一位数的情况会报错“13000000000不是整数”但并不是在rec中不支持11位以上的数,至于身份证号由于最后一位可能是X所以必须是字符型的呀。
还有能否不吝赐教一下两个允许范围用range该怎么设?

2# crackman
二维码

扫码加我 拉你入群

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

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

2011-10-31 13:56:02
其实没有那个必要设两个区间吧,如果你担心号码输入错误的话你可以设置两个空,输入两次,检查两次输入是否相等。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群