Numpyを使用し始めていて、実際には配列処理機能が好きです。配列で同様の機能を提供するC#で使用できるライブラリがありますか?私はほとんどをご希望の機能は次のとおりです。numpyのような配列操作を提供するC#ライブラリがあります
- はn次元配列の
- スライスの配列の別の
- 簡単/ trival反復から1つの配列を作成
Numpyを使用し始めていて、実際には配列処理機能が好きです。配列で同様の機能を提供するC#で使用できるライブラリがありますか?私はほとんどをご希望の機能は次のとおりです。numpyのような配列操作を提供するC#ライブラリがあります
私はあなたが必要とは思いません図書館。私は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>
あります。
NumPYはIronPython経由で.NETに移植されました。ホームページについてはhereをご覧ください。
LINQは数値的な機能が欠けており、1次元でしかうまく機能せず、良い数値のlibよりもかなり遅くなります。 – CodesInChaos
さて、問題は配列操作についてですが、パフォーマンスや数値計算が要因かどうかは言いません。 – driis
少なくとも「配列スライス」と「n次元」は言及されており、LINQでは欠けています。 – CodesInChaos