fn col_map<F>(&self, f: F) -> ComplexMatrix
    where
        F: Fn(Vec<C64>) -> Vec<C64>,
    {
        let mut result = cmatrix(
            vec![Complex::zero(); self.row * self.col],
            self.row,
            self.col,
            Shape::Col,
        );

        for i in 0..self.col {
            result.subs_col(i, &f(self.col(i)));
        }

        result
    }
Column map

# Example
```rust
use peroxide::fuga::*;
use peroxide::complex::matrix::*;
use peroxide::traits::fp::FPMatrix;

fn main() {
let x = cmatrix(vec![C64::new(1f64, 1f64),
C64::new(2f64, 2f64),
C64::new(3f64, 3f64),
C64::new(4f64, 4f64)],
2, 2, Row
);
let y = x.col_map(|r| r.fmap(|t| t + r[0]));

let y_col_map = cmatrix(vec![C64::new(2f64, 2f64),
C64::new(4f64, 4f64),
C64::new(4f64, 4f64),
C64::new(6f64, 6f64)],
2, 2, Col
);

assert_eq!(y, y_col_map);
}
```
src/complex/matrix.rs