У меня загружено множество файлов данных в формате numpy .npz, написанных на python.Я хочу прочитать их непосредственно в C # по нескольким причинам.
Файлы данных содержат ряд одномерных массивов разных типов - некоторые будут байтовыми, а другие - двойными.Кто-нибудь может дать мне несколько советов о том, как этого добиться?Или иначе, что я мог бы сделать неправильно ниже?
Я пытался использовать Accord.NET.NPZFormat, но не могу понять, как заставить это работать.Я думаю, вероятно, потому что вы должны дать ему тип для возврата, и потому что массивы имеют разные типы, он терпит неудачу.Вот ссылка на него: http://accord -framework.net / docs / html / M_Accord_IO_NpzFormat_Load__1.htm
Я борюсь с синтаксисом здесь, не зная, что использовать в качестве "T",Самое близкое, что у меня есть, - это следующее, но, похоже, в результате нет никаких данных.У Accord.IO нет примера кода.
public static void LoadNPZ(string zip_file, string npz_file)
{
byte[] ret = new byte[0];
using (ZipArchive zip = ZipFile.OpenRead(zip_file))
{
foreach (ZipArchiveEntry entry in zip.Entries)
{
if (entry.Name == npz_file + ".npz")
{
Stream fs = entry.Open();
ret = new byte[fs.Length];
fs.Read(ret, 0, (int)fs.Length);
}
}
}
if (ret.Length==0)
{
return;
}
var ret2 = NpzFormat.Load<object[]>(ret);
};