pandas函數get_dummies的坑


轉載:https://blog.csdn.net/mvpboss1004/article/details/79188190

pandas中的get_dummies得到的one-hot編碼數據類型是uint8,進行數值計算時會溢出!!!

import pandas as pd
import numpy as np
a = [1, 2, 3, 1]
one_hot = pd.get_dummies(a)
print(one_hot.dtypes)
print(one_hot)
print(-one_hot)

1 uint8
2 uint8
3 uint8
dtype: object


1 2 3
0 1 0 0
1 0 1 0
2 0 0 1
3 1 0 0


1 2 3
0 255 0 0
1 0 255 0
2 0 0 255
3 255 0 0

one_hot = one_hot.astype('float') print(-one_hot)

1 2 3

0 -1.0 -0.0 -0.0

1 -0.0 -1.0 -0.0

2 -0.0 -0.0 -1.0

3 -1.0 -0.0 -0.0

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM