Страница 1 из 1
Открытие файлов в цикле
Добавлено: 19 сен 2017, 21:13
molotok
Доброго времени суток, у меня возникла проблема с реализацией алгоритма открытия 73-х файлов в цикле, не знаю как это реализовать. Открыть два, три файла и посчитать проблем нет, но вот для 73-х уже проблемно. В каждом файле находится матрица 2048 строк на 11 столбцов, нужно считать все эти файлы и записать в один массив посчитав среднее арифметическое значение каждого элемента матрицы, то есть значение первого элемента матрицы x[i,j] получается из 73 матриц и так для каждого значения. Значения в файлах отделены пробелом. Заранее спасибо за помощь.
Re: Открытие файлов в цикле
Добавлено: 19 сен 2017, 22:27
IvanLis
molotok писал(а):Доброго времени суток, у меня возникла проблема с реализацией алгоритма открытия 73-х файлов в цикле, не знаю как это реализовать. Открыть два, три файла и посчитать проблем нет, но вот для 73-х уже проблемно. В каждом файле находится матрица 2048 строк на 11 столбцов, нужно считать все эти файлы и записать в один массив посчитав среднее арифметическое значение каждого элемента матрицы, то есть значение первого элемента матрицы x[i,j] получается из 73 матриц и так для каждого значения. Значения в файлах отделены пробелом. Заранее спасибо за помощь.
Т.е. в результате Вам необходимо получить матрицу 2048 строк на 11 столбцов, где каждый элемент это среднее значение соответствующих элементов 73 матриц?
Если да, то грузите 1-й файл, получаете 2D массив (2048*11).
Грузите 2-й файл и дописываете его в первый, получаете 3D массив (2048*11*2 [page]).... и т.д. В результате получится 3D массив (2048*11*73).
без проблем проглотит массив из чуть более 1.5 мл. элементов.
После этого выдергиваете столбик из 73 элементов и считаете среднее, пишите его в соответствующую позицию 2D массива.
Re: Открытие файлов в цикле
Добавлено: 19 сен 2017, 22:34
Blackman
Re: Открытие файлов в цикле
Добавлено: 19 сен 2017, 23:04
molotok
Т.е. в результате Вам необходимо получить матрицу 2048 строк на 11 столбцов, где каждый элемент это среднее значение соответствующих элементов 73 матриц?
да именно эту матрицу нужно получить, но уровень знаний в
оставляет желать лучшего и реализовать это практически
Re: Открытие файлов в цикле
Добавлено: 19 сен 2017, 23:08
IvanLis
molotok писал(а):да именно эту матрицу нужно получить, но уровень знаний в
оставляет желать лучшего и реализовать это практически
Дорогу осилит идущий.
Лучше Вас никто не сделает, мы можем только помочь и подсказать.
Прочтите и посмотрите, что Вам напредлагали. Соберите все в кучу и получите результат.
Что касается вычисления среднего:
Re: Открытие файлов в цикле
Добавлено: 19 сен 2017, 23:48
molotok
Что касается вычисления среднего:
Это вот так просто и изящно делается? искал на форуме на формировать 3d массив и вообще ничего не нашел. Получается нужно вместо цикла слева, цикл для захвата 73 файлов и готово? Не получается 73 в цикле открыть, открывает только первый файл.
Re: Открытие файлов в цикле
Добавлено: 20 сен 2017, 00:42
Kosist
molotok писал(а):Не получается 73 в цикле открыть, открывает только первый файл.
Нужно получить массив путей к файлам (например, функция Recursive File List.vi), а затем открывать их в цикле. Т.е. Ваш код сейчас нужно "завернуть" в еще один цикл "сверху".
Используйте пример
IvanLis - левый цикл нужно изменить, и вместо генерации чисел открывать файлы, и собирать данные в 3-х мерный массив.
Re: Открытие файлов в цикле
Добавлено: 20 сен 2017, 01:08
molotok
Kosist писал(а):molotok писал(а):Не получается 73 в цикле открыть, открывает только первый файл.
Нужно получить массив путей к файлам (например, функция Recursive File List.vi), а затем открывать их в цикле. Т.е. Ваш код сейчас нужно "завернуть" в еще один цикл "сверху".
Используйте пример
IvanLis - левый цикл нужно изменить, и вместо генерации чисел открывать файлы, и собирать данные в 3-х мерный массив.
Не пойму почему ошибку выдаёт
Re: Открытие файлов в цикле
Добавлено: 20 сен 2017, 08:13
Borjomy_1
Наверное, указали путь к файлу, а не к каталогу. В свойствах Path укажите, что выбор каталога
Re: Открытие файлов в цикле
Добавлено: 20 сен 2017, 09:40
molotok
Borjomy_1 писал(а):Наверное, указали путь к файлу, а не к каталогу. В свойствах Path укажите, что выбор каталога
Спасибо, всё именно так было, всё заработало, ещё раз всем огромное спасибо!
Re: Открытие файлов в цикле
Добавлено: 20 сен 2017, 10:42
Blackman
Не зависит от размера входного массива + остальные преимущества)