@staticmethod
def _regr_test_fromcsv():
    """Test reading in from a CSV since that has a few differences.

    Using pandas.read_csv produces a DataFrame with the following potential
    issues:

       1. Booleans become numpy.bool_ which may not be serializable without
          some tricks.
       2. Column ordering may end up different.

>>> import tempfile, os, shutil, io, pandas, msgpack
>>> from oxtie.fronts import nums
>>> from oxtie.backs import simple
>>> backend = simple.FileBackend(root=tempfile.mkdtemp(suffix='.oxtie'))
>>> data = io.StringIO(('%c'%10).join([
...    'event_date,estimate,period_date,reported,confirmed',
...    '10/1/2017,,2017/9,,FALSE',
...    '7/1/2017,0.17,2017/6,0.15,TRUE']))
>>> p = pandas.read_csv(data, index_col=0, parse_dates=[0])
>>> f = nums.SimpleFrame({'name': 'test'}, backend, frame=p)
>>> f.more = '*' * 10  # Add some more data in a property to save.
>>> f.save()
>>> g = backend.load({'name': 'test'}, allow_load=True)
>>> all(g.frame == f.frame) and f.more == g.more
True

    As an aside, you can use the deserialize_body_csv method to create
    a nums.SimpleFrame instance directly from a CSV representation without
    having to call pandas.read_csv first:

>>> cbody = {'__csv': f.frame.to_csv()}
>>> h = nums.SimpleFrame.deserialize_body_csv({'name': 'test'}, cbody, None)
>>> all(h.frame == f.frame)
True

    Now clean up

>>> shutil.rmtree(backend.root)
"""
