2
매우 간단한 질문 일지 모르지만 팬더에서 그룹화 및 색인 생성이 어떻게 작동하는지 이해하려고합니다. 내가 p_id으로 그룹을하려고 할 때팬더 그룹핑 후 그룹화
p_id rating
0 1 5
1 1 3
2 1 2
3 2 2
4 3 5
5 3 1
6 3 3
7 4 4
8 4 5
: 같은 DataFrame 보이는, 그래서 자동으로
이제df = pd.DataFrame(data={
'p_id': [1, 1, 1, 2, 3, 3, 3, 4, 4],
'rating': [5, 3, 2, 2, 5, 1, 3, 4, 5]
})
, 인덱스가 할당 될 것이다 :
나는 다음과 같은 데이터로 DataFrame을 가지고의 말합시다 얻을 수 있습니다 :
>> df[['p_id', 'rating']].groupby('p_id').count()
rating
p_id
1 3
2 1
3 3
4 2
이제이 p_id가이 DataFrame의 인덱스가되지만 첫 번째 행 나는 이상한 표정을 짓는다. 왜 빈 평가 등급을 갖는 'p_id'색인을 가지고 있는가?
>> df[['p_id', 'rating']].groupby('p_id', as_index=False).count()
p_id rating
0 1 3
1 2 1
2 3 3
3 4 2
지금 내가 이상한 첫 번째 열이없는,하지만 난 지수와 p_id 모두 가지고 :
은 내가 이렇게하면, 가지, 그것을 해결하는 방법을 알고있다.
as_index = False를 사용하지 않고 DataFrame을 그룹화하고이 추가 행을 처리하지 않아도 색인으로 p_id를 유지할 수있는 방법이 있습니까? 이 문서를 읽을 수있는 문서가 있으면 크게 환영 할 것입니다.
감사
rename_axis로 바로 가기 주셔서 감사합니다. 나는 제거하는 방법을 안다. 그러나 그것이 처음부터 거기에 있다는 것은 약간 어색하다고 느낀다. 나는 그것이 왜 처음에 일어나는가에 대해서 궁금해합니다. – ymoiseev
색인 이름이기 때문에. 소스 샘플 DF로 다음을 시도하십시오 :'df.index.name = 'AAA'; print (df)' – MaxU
오, 알았어. 그래서 빈 행이 아니야. 바보 같은 질문에 대한 설명과 사과에 감사드립니다. – ymoiseev