Pandas read_csv вешает код без ошибки, но только иногда - PullRequest
0 голосов
/ 03 марта 2020

У меня есть файл .csv с 29 столбцами.

Если я просто использую:

df = pd.read_csv('filename.csv')

, тогда код просто зависает и не ' ничего не делай. Никакого сообщения об ошибке нет - оно просто перестает работать или выглядит так, как будто оно работает и работает вечно.

Но если я использую:

df = pd.read_csv('filename.csv', usecols = [0,2])

или в любом случае, он работает просто отлично и создает фрейм данных только с этими столбцами.

Итак, я попытался: df = pd.read_csv('filename.csv', usecols = [i for i in range(0,29)])

Но он просто снова повесил код.

НО если я попытаюсь: df = pd.read_csv('filename.csv', usecols = [i for i in range(0,23)])

, чтобы он не читал весь .csv, только первые 23 столбца, он работает нормально. Он также отлично работает для любого числа от 0 до 23 (например, [i для i в диапазоне (0,10)] или [i для i в диапазоне (0,22)], но НЕ для чего-либо больше или равного 24.

Я также попытался сделать это наоборот, индексируя со спины: df = pd.read_csv('filename.csv', usecols = [i for i in range(2,29)]) Если я делаю это таким образом, он работает весь путь от столбца 28 до столбца 2. Но он снова нарушает код, если Я пытаюсь go дальше к столбцу 1 или столбцу 0.

Я в растерянности относительно того, что здесь происходит. У меня также нет степени в области компьютерных наук, поэтому, пожалуйста, говорите со мной как кто-то, кто научил себя кодировать в Python, но очень плохо (потому что я это сделал).

РЕДАКТИРОВАТЬ:

Хорошо, похоже, я понял это. У некоторых столбцов были строки в их рядах, а у некоторых были поплавки. Я думаю, что это вызывало некоторые проблемы, но непоследовательно. Я не совсем уверен, какие именно проблемы. Но сейчас это, похоже, работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...