code: def execute
        transpose = {}
  
        File.open(@infile).each_with_index do |line, index|
          line = unstring(line)
          next if line.empty?
  
          result = @col_filter.process(@row_filter.process(line, row: index))
          next if result.nil?
  
          result.split(';').each_with_index do |col, index|
            transpose[index] ||= []
            transpose[index] << col
          end
        end
  
        File.open(@outfile, 'w') do |out|
          transpose.values.each { |value| out.puts value.join(';') }
        end
      end
docs: Create a new Transpose
     Sycsvpro::Transpose(infile:  "infile.csv",
                         outfile: "outfile.csv",
                         rows:    "0,3-5",
                         cols:    "1,3").execute
   Executes the transpose by reading the infile and writing the result to
   the outfile