我有一个InfluxDB查询返回的以下对象,并且我希望能够检查任何导数是否等于或大于100,如果是,则进行处理。
我一直在尝试使用select来检查该字段,但是我实际上并不真正理解如何使用这样的数据结构。我将如何遍历返回的对象中的每个派生值?
在枚举文档中,我并没有真正看到与我的案例类似的示例。 https://ruby-doc.org/core-2.4.0/Enumerable.html
[{
"name" => "powerdns_value",
"tags" => nil,
"values" => [
{ "time" => "2017-03-21T14:20:00Z", "derivative" => 1},
{ "time" => "2017-03-21T14:30:00Z", "derivative" => 900},
{ "time" => "2017-03-21T14:40:00Z", "derivative" => 0},
{ "time" => "2017-03-21T15:20:00Z", "derivative" => 0}
]
}]
Run Code Online (Sandbox Code Playgroud)
如果您只想知道数组中的哈希值之一是否满足条件
arr.first['values'].any? { |hash| hash['derivative'] >= 100 }
Run Code Online (Sandbox Code Playgroud)