创建指定区间与步长的数值数组问题
创建指定区间与步长的数值数组问题
嘿,我懂你现在的困扰啦——想在R里生成一个从0.7到1.2、步长为0.1的数值数组,照搬Matlab的写法却只得到了单个值0.7,完全不是你想要的结果对吧?
其实这是因为R里的冒号运算符:和Matlab的语法逻辑不一样哦!R的start:end只能按默认步长1(或者-1,当start大于end时)生成序列,没法直接像Matlab那样在中间加自定义步长。
要实现你想要的效果,得用R里专门生成序列的seq()函数,写法是这样的:
b <- seq(from = 0.7, to = 1.2, by = 0.1)
运行这段代码后,你就能得到预期的数组啦:
[1] 0.7 0.8 0.9 1.0 1.1 1.2
简单说就是把Matlab里start:step:end的结构,对应成seq()函数的from、by、to参数就好啦,以后遇到类似的自定义步长序列需求,用seq()准没错~
备注:内容来源于stack exchange,提问作者Joe Bennet




