Как очистить csv базу от линий с пропусками?
Существует такая база данных, предположим, database.csv:
Необходимо удалить в ней все строки, где отсутствует эмейл, как на 7 строчке. С именем и фамилией. Записать чистую базу в новый файл.
Пробовал разбираться с csv.DictWriter, но безрезультатно.
Ответы (2 шт):
Вообще-то на данном форуме принято сначала демонстрировать свои попытки решения вопроса, а уж потом просить помощи. Тогда проще указывать в вашем коде, где и какие ошибки вы допустили. Поскольку вы новичек - за это надеюсь в первый раз не забанят. Но вот писать за вас код как-то лень. Поэтому рассказываю, как и вы, без кода.
- Читаете свой с csv файл в Pandas DataFrame.
- В этом датафрейме удаляете строки, содержащие пропуски данных. Для этого используют метод
dropna()
Другой вариант:
df[df['....'].notna()]
- Полученный в результате датафрейм записывают в файл.
Нюансы, которые могут возникнуть ввиду тех особенностей вашего кода или данных, которые вы от нас скрыли, не показав скрипт, придется в таком случае вам решать самостоятельно.
Воспользуйтесь модулем Pandas:
import pandas as pd # pip install pandas
(pd.read_csv("database.csv", sep=",")
.dropna(subset=["email"])
.to_csv("result.csv", index=False))
