docs: public static INDArray toArray(ArrowWritableRecordBatch arrowWritableRecordBatch) {
          List<FieldVector> columnVectors = arrowWritableRecordBatch.getList();
          Schema schema = arrowWritableRecordBatch.getSchema();
          for(int i = 0; i < schema.numColumns(); i++) {
              switch(schema.getType(i)) {
                  case Integer:
                      break;
                  case Float:
                      break;
                  case Double:
                      break;
                  case Long:
                      break;
                  case NDArray:
                      break;
                  default:
                      throw new ND4JIllegalArgumentException("Illegal data type found for column " + schema.getName(i) + " of type " + schema.getType(i));
              }
          }
  
  
          int rows  = arrowWritableRecordBatch.getList().get(0).getValueCount();
  
          if(schema.numColumns() == 1 && schema.getMetaData(0).getColumnType() == ColumnType.NDArray) {
              INDArray[] toConcat =  new INDArray[rows];
              VarBinaryVector valueVectors = (VarBinaryVector) arrowWritableRecordBatch.getList().get(0);
              for(int i = 0; i < rows; i++) {
                  byte[] bytes = valueVectors.get(i);
                  ByteBuffer direct = ByteBuffer.allocateDirect(bytes.length);
                  direct.put(bytes);
                  INDArray fromTensor = BinarySerde.toArray(direct);
                  toConcat[i] = fromTensor;
              }
  
              return Nd4j.concat(0,toConcat);
  
          }
  
          int cols = schema.numColumns();
          INDArray arr  = Nd4j.create(rows,cols);
          for(int i = 0; i < cols; i++) {
              INDArray put = ArrowConverter.convertArrowVector(columnVectors.get(i),schema.getType(i));
              switch(arr.data().dataType()) {
                  case FLOAT:
                      arr.putColumn(i,Nd4j.create(put.data().asFloat()).reshape(rows,1));
                      break;
                  case DOUBLE:
                      arr.putColumn(i,Nd4j.create(put.data().asDouble()).reshape(rows,1));
                      break;
              }
  
          }
  
          return arr;
      }