Update
I've got it! It's super easy. Just pile the matrices one on another, and then project the 3D matrix by average in the z dimension:
#!/usr/bin/perl use warnings; use strict; use PDL; sub load { my ($filename) = @_; open my $FH, '<', $filename or die $!; return pdl(map [split], <$FH>) } my $matrix = cat(map load($_), @ARGV); print average($matrix->reorder(2,0,1));
Old contents
I'm not yet familiar with it, so I had to compute the average myself by adding the matrices and dividing the result by their number, but maybe there already is a function to compute the average per element, or at least to apply a function per element.
#!/usr/bin/perl use warnings; use strict; use feature qw{ say }; use PDL; sub load { my ($filename) = @_; open my $FH, '<', $filename or die $!; return pdl(join "\n", map { chomp; "[$_]" } <$FH>) } my @matrices = map load($_), @ARGV; my $result = $matrices[0]; $result += $_ for @matrices[ 1 .. $#matrices ]; $result /= @ARGV; say $result;
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,
In reply to Re: how to get average of matrices' elements?
by choroba
in thread how to get average of matrices' elements?
by fasoli
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |