R 为什么seq()同时创建int和num向量,而c()从不创建int向量?
我不明白为什么R 为什么seq()同时创建int和num向量,而c()从不创建int向量?,r,R,我不明白为什么seq()可以根据元素中是否存在小数点来输出不同的类,而c()总是创建num向量,而不管是否存在小数点 例如: seqDec <- seq(1, 2, 0.5) # num vector cDec <- c(1, 1.5, 2) # num vector seqInt <- seq(1, 5) # int vector cInt <- c(1, 2, 3, 4, 5) # num vector seqDecc通过连接给定的元素来创建向量。相比之下,seq实
seq()
可以根据元素中是否存在小数点来输出不同的类,而c()
总是创建num向量,而不管是否存在小数点
例如:
seqDec <- seq(1, 2, 0.5) # num vector
cDec <- c(1, 1.5, 2) # num vector
seqInt <- seq(1, 5) # int vector
cInt <- c(1, 2, 3, 4, 5) # num vector
seqDecc
通过连接给定的元素来创建向量。相比之下,seq
实际上是通过基于特定参数生成新数字来构建序列的
在c(1,2,4,5)
的情况下,由于参数是数值的
,因此结果也是(类(1)
是数值的
,而不是整数的
!)。您可以通过提供整数来生成整数
向量:
笨重的。但这是可能的
使用seq
,如果不提供步长(by
参数),函数默认生成整数值;在这方面,它相当于:
运算符:
intvec = 1 : 5
事实上,如果您没有提供by
或length.out
参数,那么seq(from,to)
在内部执行from:to
intvec = 1 : 5