У меня есть CSV-файл, который мне нужно прочитать и проанализировать как кадр данных Pandas.Теоретически, все столбцы должны следовать известной схеме числовых данных и строк.Я знаю, что некоторые записи не работают, либо с меньшим количеством полей или неправильным порядком.
Я хотел бы избавиться от всех этих проблемных строк.
В качестве ссылки,в PySpark я использовал 'DROPMALFORMED'
для фильтрации записей, которые не соответствуют схеме.
dataSchema = StructType([
StructField("col1", LongType(), True),
StructField("col2", StringType(), True)])
dataFrame = sqlContext.read \
.format('com.databricks.spark.csv') \
.options(header='false', delimiter='\t', mode='DROPMALFORMED') \
.load(filename, schema = dataSchema)
С Пандами я не могу найти простой способ сделать это.Например, я думал, что этот фрагмент поможет, но вместо этого он просто копирует неправильное значение, а не отбрасывает его.
dataFrame['col1'] = dataFrame['col1'].astype(np.int64, errors='ignore')