#python
#питон
Вопрос:
Я новичок в python. Я работаю над CSV
файлом, в котором более миллиона записей. В данных каждое местоположение имеет уникальный идентификатор (SiteID). Я хочу отфильтровать и удалить любые записи, в которых нет значения или несоответствия между SiteID
и Location
в моем CSV
файле. (Примечание: Этот скрипт должен выводить номер строк и значения полей несоответствия для каждой записи.)
У меня есть следующий код. Пожалуйста, помогите мне:
import pandas as pd pd = pandas.read_csv ('car-auction-data-from-ghana', delimiter = ";") pd.head() date_time = (pd['Date Time'] gt;= '2010-01-01T00:00:00 00:00') #to filter from a specific date comparison_column = pd.where(pd['SiteID'] == pd['Location'], True, False) comparison_column
Ответ №1:
Это должно быть вашим решением:
df = pd.read_csv('car-auction-data-from-ghana', delimiter = ";") print(df.head()) date_time = (df['Date Time'] gt;= '2010-01-01T00:00:00 00:00') #to filter from a specific date df = df[df['SiteID'] == df['Location']] print(df)
Вам нужно вызвать read_csv как члена pd, потому что это псевдоним импортированного пакета, и использовать df в качестве переменной для вашего фрейма данных. Строка со сравнением отбрасывает строки, в которых логическое значение не равно, в данном случае два не равны.
Комментарии:
1. Спасибо за помощь. Код работает, однако он возвращает 23 столбца и 0 строк. От профессора он должен вернуть более 700 000 строк данных.