У меня есть файл .csv с разделителями табуляции, который выглядит, как показано ниже, когда вы открываете с помощью Блокнота (пространство, которое вы видите в Блокноте, фактически является вкладкой (\ t):
sep =
Time Val1 Val2
00:01 10 20
"sep =" там, чтобы Excel мог правильно прочитать файл .csv. Проблема в том, что когда вы пытаетесь открыть его с помощью read_csv, он возвращает фрейм данных с одним столбцом со столбцом с именем "s". Если я открою файл с помощью Excel и дважды щелкните первый ширину столбца, чтобы иметь автоматическую ширину, сохранить и закрыть, тогда файл будет правильно отформатирован с разделителями-запятыми. Больше никаких "sep =" в начале файла, когда вы открываете с помощью Блокнота, а затем Pandas читает его правильно со всеми столбцы и значения.
Прежде чем кто-нибудь спросит: 1. Я попытался удалить первую строку, используя:
with open(csvFileName, mode="rU") as infile:
with open(csvFileName, mode="r") as infile:
, чтобы либо удалить первую строку, либо заменить "\ t" на "," и записать его обратно в другой файл, все не сработало. 2. Я также попытался обнаружить и использовать разные схемы кодирования, поэтому проблема не в кодировании. 3. В файле используется lineterminator = \n
, и я использую этот параметр для повторного объявление 4. Я использую skiprows=0
, чтобы пропустить первую строку, не сработало 5. Я попытался установить header = 1
, чтобы он указывал на строку с заголовком, и установил sep=\t
, он считывает количество столбцов и строк правильно, но имена столбцов - "БезымянныйXYZ", а все значения - NaNs
Любая идея приветствуется!