什么是持续时间,它与长度有何不同?为什么当duration = 1的char变量转换为数字时,持续时间变为8
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是持续时间,它与长度有何不同?为什么当duration = 1的char变量转换为数字时,持续时间变为8相关的知识,希望对你有一定的参考价值。
变量的持续时间是多少?它与长度的不同之处是什么?
为什么当你使用输入函数将持续时间= 1的char变量转换为数字时,新数字变量的持续时间是8?
防爆。一个字符串变量,包含0到9之间的数字(仅1位数),因此它的持续时间= 1。转换为数字时,数字变量包含0到9之间的数字,但持续时间= 8
不确定您在何处看到与变量定义相关的持续时间。持续时间是时间的度量。也许你的意思是宽度?
当你谈到变量的宽度时,你在谈论将变量显示为字符串需要多少个字符。指定格式或信息时,请在格式名称之后和句点之前包含要使用的宽度。如果您正在从文本文件中读取一位数字,那么您将使用宽度为1的信息。或者要写入0到9之间的整数,您可以使用宽度为1的格式。但是在格式或信息与变量的长度无关。
变量的长度是SAS用于将变量存储在数据集中的字节数。 SAS只有两种类型的变量,浮点数和固定长度字符串。
对于数字,SAS使用64位浮点数,因此它们占用8个字节。因此,您无法定义长度大于8的数字。如果您将数字变量的长度设置为小于8,那么SAS将通过丢弃尾数中的某些位来存储截断值,这样您就会失去一些精度。值。
对于字符变量,length是它将存储的字节数。使用单字节编码(如WLATIN1),每个字符只占用一个字节。但是如果使用UTF-8编码,那么每个单独的字符可能需要1到4个字节的存储空间。
例如,DATE9.
格式的宽度为9,用于使用9个字符打印日期值。但由于日期是数字,存储变量所需的长度将是8而不是9。
或者以长度为1的字符变量为例,其中包含一个数字。您可以使用宽度仅为1的F1.
等信息将其转换为数字。但它仍然需要8个字节来表示该数字作为浮点值。 SAS将强制您使用至少3的长度将其存储到数据集中。 (请注意,在IBM大型机上,数值变量的最小长度为2而不是3,因为它们使用不同的浮点表示。)
以上是关于什么是持续时间,它与长度有何不同?为什么当duration = 1的char变量转换为数字时,持续时间变为8的主要内容,如果未能解决你的问题,请参考以下文章