frictionlessdata/tabulator-py

`sample` returns inconsistent results

akariv opened this issue · 0 comments

Probably related to the ignore_blank_headers feature:

See what happens when repeatedly calling sample on an open stream:

>>> s=tabulator.Stream('test/test2.csv', headers=2, ignore_blank_headers=True).open()
>>> s.sample
[['12', 'a', '1.2', '', '', '', '', '', '', '', '', ''], ['23', 'b', '2.3', '', '', '', ''], ['34', 'c', '3.4'], []]
>>> s.sample
[['a', '1.2', '', '', '', '', '', '', '', '', ''], ['b', '2.3', '', '', '', ''], ['c', '3.4'], []]
>>> s.sample
[['1.2', '', '', '', '', '', '', '', '', ''], ['2.3', '', '', '', ''], ['3.4'], []]
>>> s.sample
[['', '', '', '', '', '', '', '', ''], ['', '', '', ''], [], []]
>>> s.sample
[['', '', '', '', '', '', '', ''], ['', '', ''], [], []]
>>> s.sample
[['', '', '', '', '', '', ''], ['', ''], [], []]
>>> s.sample
[['', '', '', '', '', ''], [''], [], []]
>>> s.sample
[['', '', '', '', ''], [], [], []]
>>> s.sample
[['', '', '', ''], [], [], []]
>>> s.sample
[['', '', ''], [], [], []]
>>> s.sample
[['', ''], [], [], []]
>>> s.sample
[[''], [], [], []]
>>> s.sample
[[], [], [], []]