1
는
후 팬더 pivot_table 가진 새로운 dataframe를 생성 D- 타입팬더 피벗 변화는 INT32에서 DTYPE 변경 부유
원래 dataframe
df = pd.DataFrame.from_dict(my_dict, orient='columns', dtype='i4')
print(df.head(11))
출력 :
clock eventid ns objectid value
0 1505960158 62704261 327504323 32219 1
1 1505962773 62711138 22192905 32219 0
2 1505400465 61216428 123915259 32233 1
3 1504642494 59208977 369082011 32254 1
4 1504643325 59210478 576875730 32254 0
5 1504642494 59208978 369082011 32260 1
6 1504643325 59210479 576875730 32260 0
7 1504224224 58101461 445846619 13479 0
8 1504258784 58187457 204908064 13479 1
9 1504310624 58318750 443786274 13479 0
10 1504517992 58886060 746243067 13479 1
print(df.dtypes)
출력 :
clock int32
eventid int32
ns int32
objectid int32
value int32
dtype: object
어디 갔지 내가 pivot_table
p = df.reset_index().pivot_table(index="objectid", columns="value", values="clock", fill_value=0).iloc[:, ::-1]
print(p)
출력 사용
value 1 0
objectid
13479 1505534184 1.505467e+09
13485 1505676014 1.505677e+09
32219 1505960158 1.505963e+09
32233 1505400465 0.000000e+00
32254 1504642494 1.504643e+09
32260 1504642494 1.504643e+09
print(p.dtypes)
출력 :
value
1 int64
0 float64
dtype: object
왜 0 열이 될 플로트? 이것을 피하는 방법?
더 'NaN이'없다 :
이제 열이 upcasted 이유는 분명, 당신은
astype
를 사용하여 데이터 유형을 재설정 할 수 있습니다. df 데이터 프레임에는 133 행이 있지만 p 데이터 프레임에는 6 개만 있습니다. 내 질문을 편집합니다. –@ JoaoVitorino'df.isnull(). any()'를 수행하고 그 결과를 확인하십시오. 귀하의 결과 중 하나는 '0.0000000e + 00'을 가지므로 그게 다소 도움이됩니다. –
df.isnull() any()는 모든 열에 대해 false를 반환합니다. –