【发布时间】:2015-01-06 15:56:34
【问题描述】:
所以我有一个定义为String[][] data_set_examples 的二维数组,其中包含以下数据:
Sunny,Hot,High,Weak,No
Sunny,Hot,High,Strong,No
Overcast,Hot,High,Weak,Yes
Rain,Mild,High,Weak,Yes
Rain,Cool,Normal,Weak,Yes
...
我想按特定值过滤行,例如包含“热”的行(按列索引 1)
我了解使用 LINQ 可能是一种可能性。虽然我不熟悉,但我尝试了以下方法,但是没有进行过滤。
var result = from u in data_set_examples
where u[column_index].Equals(attribute_value)
select u;
我做错了什么?还有其他方法吗?
【问题讨论】:
-
您的代码看起来不错。你确定
column_index是正确的吗?您是否尝试过设置断点并检查data_set_examples中的数据以确保它是您认为的那样? -
你如何证明这一点:“但是没有进行过滤”?
-
为什么不创建一个类来保存数据、当前矩阵行所保存的内容,然后从中创建一个 List 或任何 IEnumerable 呢?这绝对是反面向对象的。过滤、转换等会容易得多。
-
我如何检查: foreach (string[] s in result) { Console.WriteLine(s); }
-
问题在你检查,检查这个看看结果
foreach (string[] s in result) { Console.WriteLine(string.Join(",", s)); }
标签: c# .net arrays linq jagged-arrays