arrays - 如何根据 IlNumerics 中的数组中的多个条件过滤行
问题描述
我想获得基于多个约束的行。一个标准很完美,比如
A[A[full, 0] % 3 == 0, full];
但是当我添加第二个条件时,我得到一个编译器错误。这样做的正确方法是什么?
Array<double> A = new double[,] {
{ 1, 9, 20 },
{ 2, 11, 21 },
{ 9, 12, 21 },
{ 9, 13, 23 },
{ 9, 14, 24 },
{ 10, 12, 21 },
{ 14, 13, 23 },
{ 16, 14, 24 },
{ 19, 12, 21 },
{ 27, 13, 23 },
{ 23, 14, 24 },
{ 6, 15, 25 }
};
Array<double> matching =
A[A[full, 0] % 3 == 0 && A[full, 1] > 10, full];
解决方案
&&
运算符没有Array<T>
重载。它在 C# 中返回一个布尔值,而不是您可能期望的数组。改用相应的功能ILMath.and(A, B)
,它就会起作用。
推荐阅读
- javascript - 预期 true 等于 false
- ios - UIView.animate 不能在 swift 中正常工作
- ios - 应用程序委托与视图控制器中的代码
- spring-integration - Spring 集成 - Imap 连接错误处理
- asp.net-core - 获取 %AppData% 的路径返回错误值
- oracle - Oracle Database XE - 自己的计算机/本地目录
- uwp - 如何使用 xaml 中的视觉状态在 uwp 中设置整个应用程序的 MinWidth
- sql - 每周计算工作日
- linux - yocto,如何构建 ffmpeg 开发包
- angularjs - ionic v1中使用angularjs的查询字符串