跳至内容

一个 Scalar 持有一个箭头类型的单个值。

工厂

Scalar$create() 工厂方法实例化一个 Scalar 并接受以下参数

  • x: 一个 R 向量、列表或 data.frame

  • type: 一个可选的 数据类型 用于 x。如果省略,类型将从数据中推断。

用法

a <- Scalar$create(x)
length(a)

print(a)
a == a

方法

  • $ToString(): 转换为字符串

  • $as_vector(): 转换为 R 向量

  • $as_array(): 转换为箭头 Array

  • $Equals(other): 此标量是否等于 other

  • $ApproxEquals(other): 此标量是否近似等于 other

  • $is_valid: 此标量是否有效

  • $null_count: 无效值的个数 - 1 或 0

  • $type: 标量类型

  • $cast(target_type, safe = TRUE, options = cast_options(safe)): 将值转换为不同的类型

示例

Scalar$create(pi)
#> Scalar
#> 3.141592653589793
Scalar$create(404)
#> Scalar
#> 404
# If you pass a vector into Scalar$create, you get a list containing your items
Scalar$create(c(1, 2, 3))
#> Scalar
#> list<item: double>[1, 2, 3]

# Comparisons
my_scalar <- Scalar$create(99)
my_scalar$ApproxEquals(Scalar$create(99.00001)) # FALSE
#> [1] FALSE
my_scalar$ApproxEquals(Scalar$create(99.000009)) # TRUE
#> [1] TRUE
my_scalar$Equals(Scalar$create(99.000009)) # FALSE
#> [1] FALSE
my_scalar$Equals(Scalar$create(99L)) # FALSE (types don't match)
#> [1] FALSE

my_scalar$ToString()
#> [1] "99"