2017-11-20 5 views
1

내 데이터 세트에 약 8781 개의 행이 있습니다. 나는 달에 따라 다른 항목을 그룹화하고 매월 특정 항목의 평균을 계산했습니다. 이제 매달마다 새 행을 삽입 한 후 매월 결과를 저장하려고합니다. 다음은 항목을 그룹화하고 평균을 계산할 때 사용한 코드입니다. 제발, 아무도, 매달마다 새로운 행을 삽입하고 내 groupby 결과를 저장할 수있는 방법을 알려주십시오.groupby를 구현하고 내 .csv 파일에 groupby 출력으로 삽입하려고합니다.

a = pd.read_csv("data3.csv") 
print (a) 

df=pd.DataFrame(a,columns=['month','day','BedroomLights..kW.']) 
print(df) 
groupby_month=df['day'].groupby(df['month']) 
print(groupby_month) 
c=list(df['day'].groupby(df['month'])) 
print(c) 
d=df['day'].groupby(df['month']).describe() 
print (d) 
#print(groupby_month.mean()) 
e=df['BedroomLights..kW.'].groupby(df['month']).mean() 
print(e) 

csv 파일의 샘플은 다음과 같습니다

Month lights ...... 
1  0.32 
1  0.43 
............... 
mean as a new row 
............... 
12  0.32 
12  0.43 
mean ......... 

출력 : 내가 좋아하는 매월 항목의 평균입니다 새 행을 추가하고 싶은

Day Month Year lights Fan temperature windspeed 
1 1  2016 0.003 0.12  39  8.95 
2 1  2016 0.56 1.23  34  9.54 
3 1  2016 1.43 0.32  32  10.32 
4 1  2016 0.4 1.43  24  8.32 
................................................. 
1 12 2016 0.32 0.54  22  7.65 
2 12 2016 1.32 0.43  21  6.54 

예외 처리 된 출력 내가 나타낸 코드는 다음과 같습니다.

month 
1  0.006081 
2  0.005993 
3  0.005536 
4  0.005729 
5  0.005823 
6  0.005587 
7  0.006214 
8  0.005509 
9  0.005935 
10 0.005821 
11 0.006226 
12 0.006056 
Name: BedroomLights..kW., dtype: float64 
+0

멋진 코드 가긴하지만 데이터는 어디에 있습니까? 5 ~ 10 행의 데이터를 예상 출력과 함께 보지 않고도 원하는 것을 이해하는 것은 쉽지 않습니다. –

+0

데이터 세트 샘플, 코드 출력, 예외 출력 샘플이 질문에서 편집되었습니다. – user143072

답변

0

색인이 1mean, 2mean, 3mean 등인 경우 sort_indexes은 원하는 위치에 배치해야합니다.

e.index = [str(n)+'mean' for n in range(1,13)] 
df = df.append(e) 
df = df.sort_index()