def _validate_time_index_col(df: DataFrame, entity_id: str, time_index: str): def validate_single_row(row: Row): time_str = row[time_index] try: return parser.parse(time_str) except Exception: raise ValueError("Cannot parse '{0}' of time index column " "'{1}' in entity '{2}'! ".format( time_str, EntitySpark.recover_col_name( entity_id, time_index), entity_id)) df.foreach(validate_single_row)