2017-03-25 2 views
2

저는 데이터 세트를 갖고 있습니다. 나는 파이썬과 팬더로 분석하고 싶습니다. 그것은 모두 .txt에 포함되어 있지만 구분 기호는 +++ $ +++입니다. 어떻게 해석 할 수 있습니까? pandas df에 여러 문자가있는 구분 기호로 .txt를 어떻게 파싱 할 수 있습니까?

import pandas as pd 
df = pd.read_csv('filename.txt', sep='+++$+++', header = None) 

이 두 줄

이 오류를 불러 :

sre_constants.error: nothing to repeat 

답변

4

때문에 구분이 더 이상 http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html에 명시된대로, 정규 표현식으로 해석이야 1 개 문자보다 긴 경우; 그래서 +는 "이전 숯의 모든 일치"를 나타내며, 따라서 "반복 할 것이 없다"는 것을 나타냅니다.

심볼을 이스케이프 처리하면 효과가 있다고 생각합니다.

+2

좋은 점! 나는 또한 예제를 추가 할 것이다 - 이것은 누군가를 도울지도 모른다. .. import re; df = pd.read_csv (r '/ path/to/file.csv'. sep = re.escape ('+++ $ +++')) ' – MaxU

+1

그래,이 작업 : sep ='\ + \ + \ + \ $ \ + \ + \ + ' – GiantsLoveDeathMetal

+2

다른 말로하면,'\ + {3} \ $ \ + {3}' –

관련 문제