2017-09-09 2 views
0

저는 python을 처음 사용하고 csv와 datetime을 구문 분석하려고합니다. 나는이 CSV를 구문 분석 할datetime 열을 특정 형식으로 구문 분석하고 CSV로 저장

Column-1  Column-2 
Name1   03/09/2012 11:26:08 
Name2   04/10/2011 11:26:08 
Name3   13/11/2010 11:26:08 
...   ... 

- -

나는 다음과 같은 형식으로 CSV를> 읽기 2 열 -> 만 월 - 년 추출 - 다시 같은 열에서> 저장 및 행

CSV를 구문 분석하고 데이터를 읽고 월 단위로 추출했지만 동일한 행을 식별하고 다시 저장하는 방법을 확신 할 수 없습니다. 당신은 당신의 CSV를 읽을 때 parse_dates 매개 변수를 추가 한 다음 .dt.strftime를 사용하여 원하는 형식으로 변환

Column-1  Column-2 
Name1   09/2012 
Name2   10/2011 
Name3   11/2010 
...   ... 
+0

월을 추출하는 코드를 표시 하시겠습니까 –

+0

파일을 제 위치에서 수정할 수 없습니다. 수정 된 데이터를 새 파일에 쓴 다음 원할 경우 원본 위에 복사합니다. – glibdud

+0

팬더 있어요? –

답변

1

-

는 기본적으로 출력은 동일한 CSV가 수정 될 수 있어야합니다.

df = pd.read_csv(...., sep='\s{2,}', engine='python', 
          parse_dates=['Column-2'], dayfirst=True) 
df['Column-2'] = df['Column-2'].dt.strftime('%m/%Y') 
df 

    Column-1 Column-2 
0 Name1 09/2012 
1 Name2 10/2011 
2 Name3 11/2010 

df.to_csv(..., sep='\t') 

하는 것으로, 날짜는 형식 DD/MM/YYYY, 추가 dayfirst=True 매개 변수를 전달해야이 있기 때문에.

+0

나는 바보가된다. 그 'sep'는 무엇입니까? – roganjosh

+0

@roganjosh 열의 구분 기호로, 정규식으로 지정됩니다. Delim_whitespace = True는 날짜 열을 잘못 나눌 수 있기 때문에 원하지 않습니다. –

+0

분리 기호에 대한 것이지만 그것이 무엇을하는지 이해할 수 없었습니다. 두 개 이상의 연속 된 공백 블록을 구분하기위한 것입니까? – roganjosh

관련 문제