我正在做一個資料分析專案,我正在處理非常大的數字。我最初是用純 python 做的,但我現在嘗試用 numpy 和 pandas 來做。但是,我似乎遇到了障礙,因為在 numpy 中無法處理大于 64 位的整數(如果我在 numpy 中使用 python 整數,它們的最大值為 9223372036854775807)。我是完全扔掉 numpy 和 pandas 還是有辦法將它們與 python 風格的任意大整數一起使用?我沒問題。
uj5u.com熱心網友回復:
默認情況下,numpy 將元素保留為數字資料型別。但是您可以強制鍵入物件,如下所示
import numpy as np
x = np.array([10,20,30,40], dtype=object)
x_exp2 = 1000**x
print(x_exp2)
輸出是
[1000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000]
缺點是執行速度要慢得多。
稍后編輯以顯示 np.sum() 有效。當然可能有一些限制。
import numpy as np
x = np.array([10,20,30,40], dtype=object)
x_exp2 = 1000**x
print(x_exp2)
print(np.sum(x_exp2))
print(np.prod(x_exp2))
輸出是:
[1000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000]
1000000000000000000000000000001000000000000000000000000000001000000000000000000000000000001000000000000000000000000000000
1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/380559.html
下一篇:R到Python的隨機程序轉換
