def load(self, in_fh, header=False, delimit=None, verbose=False):
self.clear()<EOL>if verbose:<EOL><INDENT>sys.stderr.write("<STR_LIT>")<EOL><DEDENT>in_strm = in_fh<EOL>if isinstance(in_strm, basestring):<EOL><INDENT>in_strm = open(in_strm)<EOL><DEDENT>for line in in_strm:<EOL><INDENT>line = line.strip()<EOL>if line == "<STR_LIT>":<EOL><INDENT>continue<EOL><DEDENT>if header and self.header is None:<EOL><INDENT>self.header = line.split(delimit)<EOL>continue<EOL><DEDENT>parts = line.split(delimit)<EOL>if self.frame != [] and len(parts) != len(self.frame):<EOL><INDENT>raise IOError("<STR_LIT>")<EOL><DEDENT>while len(self.frame) < len(parts):<EOL><INDENT>self.frame.append([])<EOL><DEDENT>for i in range(<NUM_LIT:0>, len(parts)):<EOL><INDENT>self.frame[i].append(parts[i])<EOL><DEDENT><DEDENT>
Load this data_table from a stream or file.

Blank lines in the file are skipped. Any existing values in this dataTable
object are cleared before loading the new ones.

:param in_fh:    load from this stream. Can also be a string, in which case
                 we treat it as a filename and attempt to load from that
                 file.
:param header:   if True, the first row is considered a header
:param delimit:  delimiter for splitting columns; set to None (default) to
                 split around any whitespace.
:param verbose:  if True, output progress messages to stderr.