У меня около 650 csv-матриц. Я планирую на загрузку каждого из них с помощью Numpy, как в следующем примере:Множественные матричные умножения с Numpy
m1 = numpy.loadtext(open("matrix1.txt", "rb"), delimiter=",", skiprows=1)
Есть matrix2.txt, matrix3.txt, ..., matrix650.txt файлы, которые мне нужно обработать.
Моя конечная цель заключается в умножении каждой матрицы друг с другом, то есть я не обязательно должен поддерживать 650 матрицу, но скорее всего 2 (1 продолжающиеся и 1, что я в настоящее время умножая мой продолжающийся по.)
Вот пример того, что я имею в виду с матрицами, определенными от 1 до n: M1, M2, M3, .., Mn.
M1 * M2 * M3 * ... * Mn
Размеры на всех матриц одинаковы. Матрицы не квадратные. Есть 197 строк и 11 столбцов. Ни одна из матриц не разрешена, и каждая ячейка вступает в игру.
Что является лучшим/наиболее эффективным способом сделать это в python?
EDIT: Я взял то, что было предложено, и получил его для работы, взяв транспонирование, поскольку он не является квадратной матрицей. В качестве дополнения к вопросу, i Есть ли способ в Numpy для умножения элементов на элементы?
Есть ли определенный этап процесса, на котором вы застряли? –
Каков размер матриц? дорогостоящая задача считывается, поэтому загружайте максимум их в каждый момент времени. –
Часто есть разница между лучшими (элегантными) и эффективными. Вы можете читать их в нескольких потоках, если cpu не имеет значения, или только 2 матрицы одновременно, если память имеет значение, если имеет значение время. Насколько они большие? Имеет ли значение память? – Kordi