SimuBox.toolkits.vector module

SimuBox.toolkits.vector.vectorize(value: Any, length: int | None = None, fill_value: Any | None = None)

对任意值进行向量化,进一步可以进行截取和填充

参数:
  • value – 需要进行向量化的任意值,可以是标量,也可以是向量

  • length – 最终向量的长度,原长度过长会被截取,否则会被扩充

  • fill_value – 扩充时的填充值,默认为向量的最后一个值

返回:

向量

>>> vectorize(1)
[1]
>>> vectorize("p")
['p']
>>> vectorize([1,2,3], 2)
[1, 2]
>>> vectorize((1,2,3), 2)
(1, 2)
>>> vectorize(np.array([1,2,3]), 5, 8)
array([1, 2, 3, 8, 8])
>>> vectorize([1,2,3], 5, "p")
[1, 2, 3, 'p', 'p']
>>> vectorize((1,2,3), 4, 4)
(1, 2, 3, 4)
SimuBox.toolkits.vector.verify_scalar(value: Any)

对参数值进行检验,如果是标量,返回True;如果是向量,返回False

参数:

value – 任何形式的参数

返回:

布尔值,True或者False

>>> verify_scalar(1)
True
>>> verify_scalar(3.14)
True
>>> verify_scalar("p")
True
>>> verify_scalar(1+2j)
True
>>> verify_scalar([1,1])
False