code: def smp_to_dataframe(smp_filename,datetime_format=None):
      
  
      if datetime_format is not None:
          date_func = lambda x: datetime.strptime(x,datetime_format)
      else:
          date_func = date_parser
      df = pd.read_csv(smp_filename, delim_whitespace=True,
                       parse_dates={"datetime":["date","time"]},
                       header=None,names=["name","date","time","value"],
                       dtype={"name":object,"value":np.float64},
                       na_values=["dry"],
                       date_parser=date_func)
      return df
docs: load an smp file into a pandas dataframe (stacked in wide format)
  
      Parameters
      ----------
      smp_filename : str
          smp filename to load
      datetime_format : str
          should be either "%m/%d/%Y %H:%M:%S" or "%d/%m/%Y %H:%M:%S"
          If None, then we will try to deduce the format for you, which
          always dangerous
  
      Returns
      -------
      df : pandas.DataFrame