A better way of doing this... ```java var windowSize = 5; var rowKeys = Range.ofLocalDates("2014-01-01", "2014-01-11"); var colKeys = Range.of(0, 5).map(i -> "Column-" + i); var frame = DataFrame.ofDoubles(rowKeys, colKeys, value -> Math.random() * 10d); IntStream.range(windowSize-1, frame.rowCount()).mapToObj(lastRow -> { var startRow = lastRow - windowSize; return frame.rows().select(row -> row.ordinal() <= lastRow && row.ordinal() > startRow); }).forEach(window -> { ((DataFrame) window).out().print(); }); ```