2016-07-17 4 views
-2

Имейте файл данных, состоящий из строки (без вкладок и пробелов и без имен столбцов). Первые два столбца эквивалентны одной части данных, третий столбец - другой, а 4 - 7 - что-то еще и т. Д.Разбиение файла данных в python или pandas

Как я могу получить эти строки в кадре данных с именованными столбцами? Все ответы, которые я видел, предполагают, что у меня есть вкладки, пробелы и т. Д.

+5

Не могли бы вы привести пример ваших данных? Я не уверен, что значит иметь «столбцы», но также сказать, что нет «вкладок, пробелов и т. Д.», между значениями. Откуда вы знаете, где останавливается одно значение, а следующее начинается? – smarx

+0

Вы описываете файл с фиксированной шириной, где каждый столбец определяется строгим числом символов? Если это так, посмотрите на 'pandas.read_fwf'. – BrenBarn

ответ

3

Вы можете использовать pd.read_fwf с параметром widths. Файл с этим содержимым:

ieafxfrjzyxfxkymiwuy 
lqqmceegjnbjpxnidygr 
zssawojanxbrfwkgbvnl 
ahcwwhtayjwozzrgfftt 

Становится это:

pd.read_fwf('test.txt', widths = [2, 4, 3, 11], names=['first', 'second', 'third', 'fourth']) 
Out[226]: 
    first second third  fourth 
0 ie afxf rjz yxfxkymiwuy 
1 lq qmce egj nbjpxnidygr 
2 zs sawo jan xbrfwkgbvnl 
3 ah cwwh tay jwozzrgfftt 
+0

Это именно то, что мне нужно. @ayhan - Спасибо. – TIll

+1

@TIll Если на ваш вопрос был дан ответ, вы можете [принять этот ответ] (https://stackoverflow.com/help/someone-answers). –

Смежные вопросы