2017-03-17 2 views
1

이 질문은 고대의 질문이며 모든 이전 게시물을 검색했지만 내 구체적인 질문을 해결하는 답변을 찾을 수는 없습니다.Python groupby datetime

난 더 유모 값이나 이상한 문자를 포함하지 않는이

Date Position Value 
2010-01-01 PEAK  600 
2010-01-01 BOTTOM 510 
2010-01-02 PEAK  620 
2010-01-02 BOTTOM 500 
... 
2015-03-02 PEAK  700 

처럼 보이는 dataframe을 취급하고 있습니다. 그러나 원본 데이터가 없습니다 "날짜"형식의, 그래서 "날짜"형식이

df1 = df.sort('Date') 
df1['Date'] = pd.to_datetime(df1['Date']) 

를 사용하도록 변환하지만 난 GROUPBY() 명령

df1.groupby('Date') 

를 사용하여 그룹 내 dataframe 시도 후 "Position"열을 그룹화하고 "Value"에서 계산을 수행하기 전에 계속 오류 메시지가 표시됩니다.

<pandas.core.groupby.DataFrameGroupBy object at 0x7f880d4f2160> 

아무 것도 생성되지 않았습니다.

내 코드가 동일한 날짜/시간 값을 가진 모든 행 항목을 함께 그룹화 할 것이라고 기대했지만, 그렇게하지는 않았습니다.

누군가가이 문제에 대해 밝힐 수 있다면 크게 감사하겠습니다.

감사합니다.

+0

옳다면 동의하십시오! 나는 그 육즙 명성을 좋아한다 – Charlie

답변

2

이것은 오류가 아닙니다. groupby은 groupby 객체를 반환하는데, 집계 함수를 호출해야합니다. 일반적으로 사람들은 .mean()라고 말하면서 다른 사람이 당신을 대신 기입 할 수있는 다른 사람들이 있습니다.

내가 정확히 당신이 원하는 것을 알고하지 않기 때문에, 나는 나의 예제를 추측 할게요

df1.groupby(['Date', 'Position']).mean() 
PEAK (피크)와 BOTTOM 값을 날짜와 위치별로 그룹화 dataframe은 모두 평균

윌 출력 해당 요일에 대한 PEAK 및 BOTTOM 값

오 잠깐. 특정 날짜의 최고치 및 최저치 만 있습니다. 시도해보십시오.

df1[['Date', 'Value']].groupby('Date').mean() 

해당 날짜의 평균값입니다.

+0

예,이 작품. 신속한 답장을 보내 주셔서 감사합니다. 나는 문서를 더 철저히 읽을 필요가있다. –

+0

@ChrisT. 언제든지! – Charlie