def insert_column(self, data_array, ckey='<STR_LIT>', index=None):
<EOL>if type(ckey) in [int, int]: ckey = self.ckeys[ckey]<EOL>self.columns[ckey] = _n.array(data_array)<EOL>if not ckey in self.ckeys:<EOL><INDENT>if index is None: self.ckeys.append(ckey)<EOL>else:             self.ckeys.insert(index, ckey)<EOL><DEDENT>return self<EOL>
This will insert/overwrite a new column and fill it with the data from the
the supplied array.

Parameters
----------
data_array  
    Data; can be a list, but will be converted to numpy array
ckey        
    Name of the column; if an integer is supplied, uses self.ckeys[ckey]
index       
    Where to insert this column. None => append to end.