У меня есть много CSV-файлов, каждый из которых содержит примерно одинаковые матрицы. Каждая матрица состоит из 11 столбцов по 5 или 6 строк. Столбцы являются переменными, а строки - условиями тестирования. Некоторые из матриц не содержат данных о последнем тестовом условии, поэтому в одних матрицах имеется 5 строк, а в других - шесть строк.
Мое приложение в Python 2.6 с использованием numpy и sciepy.
Мой вопрос такой:
Как наиболее эффективно создать сводную матрицу, которая содержит средние значения каждой ячейки для всех идентичных матриц?
Сводная матрица будет иметь ту же структуру, что и все другие матрицы, за исключением того, что значение в каждой ячейке в сводной матрице будет представлять собой среднее значение, хранящееся в идентичной ячейке для всех других матриц. Если одна матрица не содержит данных для последнего условия теста, я хочу удостовериться, что ее содержимое не будет обрабатываться как нули при выполнении усреднения. Другими словами, я хочу получить все ненулевые значения.
Может кто-нибудь показать мне краткий, гибкий способ организации этого кода таким образом, чтобы он делал все, что я хочу, с как можно меньшим количеством кода, а также оставался максимально гибким на случай, если я захочу - использовать это позже с другими структурами данных?
Я знаю, как вытащить все CSV-файлы и как записать вывод. Я просто не знаю наиболее эффективного способа структурирования потока данных в сценарии, в том числе о том, использовать ли Python-массивы или массивы NumPy и как структурировать операции и т. Д.
Я пытался кодировать это разными способами, но все они кажутся довольно интенсивными и негибкими, если позже я захочу использовать этот код для других структур данных.