是否有一个c#库提供像numpy这样的数组操作

时间:2013-04-12 16:56:38

标签: c# arrays numpy

我开始使用Numpy并且非常喜欢它的数组处理功能。是否有一些我可以在C#中使用的库,它提供与数组类似的功能。我最想要的功能是:

  • 从另一个
  • 创建一个数组
  • n维数组
  • 的简易/三次迭代
  • 切片数组

2 个答案:

答案 0 :(得分:8)

NumPY已通过IronPython移植到.NET。查看here主页。

答案 1 :(得分:-1)

我认为你不需要图书馆。我认为LINQ你所提到的都很好。

从另一个

创建一个数组
int[,] parts = new int[2,3];

int[] flatArray = parts.ToArray();
// Copying the array with the same dimensions can easily be put into an extension 
// method if you need it, nothing to grab a library for ...

轻松迭代

int[,] parts = new int[2,3];

foreach(var item in parts)
    Console.WriteLine(item);

切片数组

int[] arr = new int[] { 2,3,4,5,6 };
int[] slice = arr.Skip(2).Take(2).ToArray();

// Multidimensional slice 
int[,] parts = new int[2,3];
int[] slice = arr.Cast<int>().Skip(2).Take(2).ToArray();

上一个例子中的尴尬.Cast<int>due to the quirk that multidimensional arrays in C# are only IEnumerable and not IEnumerable<T>