楼主: guolaiguoqu
2413 5

问个数据类型的小问题 [推广有奖]

  • 0关注
  • 3粉丝

本科生

16%

还不是VIP/贵宾

-

威望
0
论坛币
447 个
通用积分
3.0925
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
921 点
帖子
54
精华
0
在线时间
71 小时
注册时间
2009-4-27
最后登录
2021-7-9

楼主
guolaiguoqu 发表于 2009-5-29 23:58:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

有两个变量V和C,其存储类型都是double。

假设样本数为1,其中V=40.01,C=0.4001

然后我

replace v=v/100

count if v==c

可结果显示0。

如果V和C存储类型都是float,那结果就正确。

这是为什么呢?

 

331089.xls (37 Bytes)

[此贴子已经被作者于2009-5-30 0:00:03编辑过]

二维码

扫码加我 拉你入群

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

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

关键词:数据类型 小问题 replace double place 数据 类型

331088.xls
下载链接: https://bbs.pinggu.org/a-331088.html

37 Bytes

问个数据类型的小问题

回帖推荐

eblog 发表于6楼  查看完整内容

经测试没有问题,结果都是1:clearinput code year v c609 2002 40.01 0.4001endreplace v=v/100count if v==crecast double v ccount if v==c

sungmoo 发表于2楼  查看完整内容

http://www.pinggu.org/bbs/dispbbs.asp?BoardID=67&replyID=117276&id=458586&skin=0相同的问题吧?

本帖被以下文库推荐

沙发
sungmoo 发表于 2009-5-30 09:05:00

藤椅
guolaiguoqu 发表于 2009-5-30 15:49:00

谢谢了。

之前看过那个贴子,不过还是不太明白。

如果根据变量之间关系条件等经常要生成一些变量,最好怎么给变量设置数据类型呢?

(真汗,现在很怀疑之前不加思索地生成一些变量的可靠性)

在我的数据V和C中,我明明看到V=40.01,C=0.4001,而且两个都是double,
那么V/100应该等于C的。。。

然后我又根据这一相等条件生成了许多变量,唉。

板凳
蓝色 发表于 2009-5-30 16:08:00

产生新变量没有问题。

. des

Contains data
  obs:             1                         
 vars:             2                         
 size:            20 (99.9% of memory free)
-------------------------------------------------------------------------------
              storage  display     value
variable name   type   format      label      variable label
-------------------------------------------------------------------------------
var1            double %9.0g                 
var2            double %9.0g                 
-------------------------------------------------------------------------------
Sorted by: 
     Note:  dataset has changed since last saved

. list

     +---------------+
     |  var1    var2 |
     |---------------|
  1. | 40.01   .4001 |
     +---------------+

. gen k= var1/100

. count if  var2== k
    1

. des

Contains data
  obs:             1                         
 vars:             3                         
 size:            24 (99.9% of memory free)
-------------------------------------------------------------------------------
              storage  display     value
variable name   type   format      label      variable label
-------------------------------------------------------------------------------
var1            double %9.0g                 
var2            double %9.0g                 
k               float  %9.0g                 
-------------------------------------------------------------------------------
Sorted by: 
     Note:  dataset has changed since last saved

. list

     +-----------------------+
     |  var1    var2       k |
     |-----------------------|
  1. | 40.01   .4001   .4001 |
     +-----------------------+

[此贴子已经被作者于2009-5-30 16:12:27编辑过]

报纸
guolaiguoqu 发表于 2009-5-30 16:17:00

可为什么

replace v=v/100

count if v==c

就不行了呢?

地板
eblog 发表于 2009-6-2 17:33:00
经测试没有问题,结果都是1:

clear
input code year v c
609 2002 40.01 0.4001
end
replace v=v/100
count if v==c
recast double v c
count if v==c


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

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