работа с набором данных, содержащим персидские записи

я работаю над набором данных, содержащим персидские записи, я установил персидский язык и unicodecsv, но все еще имею эту ошибку.

df = pd.read_csv('datasets\NSIA.Individuals.csv')
df.head()

ошибка, которую я получаю:

SyntaxError: (ошибка юникода) кодек 'unicodeescape' не может декодировать байты в позиции 8-9: искаженный экран \N символа


person Awen Karimi    schedule 12.12.2019    source источник


Ответы (1)


Проблема, как видно из ошибки, заключается не в содержимом файла, а в самом пути, я предполагаю, что вы используете окна, и комбинация "\N" проблематична, потому что это escape-символ, вы можете прочитать подробнее об escape-символах по следующей ссылке.

Вы можете сделать следующее с путем, и это решит вышеуказанную проблему:

df = pd.read_csv('datasets\\NSIA.Individuals.csv')

другой подход:

df = pd.read_csv(r'datasets\NSIA.Individuals.csv')

Однако впоследствии могут возникнуть проблемы с контентом.

person David    schedule 12.12.2019
comment
Для чего нужны '''? - person AMC; 12.12.2019
comment
@AlexanderCécile Если, например, строка соскальзывает с 1 строки (по внешнему виду), то этот '''<str>''' - это способ прыгать по строкам, и чтение по-прежнему будет действительным и приятным. - person David; 12.12.2019
comment
Я в замешательстве, я не ожидаю, что люди будут использовать ''' везде на всякий случай, когда-нибудь в будущем появится более длинная строка. Если это одна строка, ' подойдет. - person AMC; 13.12.2019
comment
@AlexanderCécile Изменил это, но это не должно сбивать вас с толку, у всех есть свои соглашения. - person David; 13.12.2019