如何将对象更改为数字?

时间:2019-04-10 17:07:06

标签: python pandas

我有这个“ position1” df(并且我试图对我的总投资组合的价值求和):

               total         Last_P
BNB       0.77063139    18.33230000
BTC          1.4e-07  5235.88000000
EOS           0.0073     5.82520000
ETH         1.31e-06   178.51000000
USDT     80.13510905            NaN
XRP              300     0.35374000

上面是一个对象,使用后:

position1.info()
position1 = pd.to_numeric(position1, downcast='float')
#position1 = pd.to_numeric(position1, errors='coerce')#tried this
#position1.apply(lambda x: pd.to_numeric(x), axis=0)#tried this    
print(position1)
position1.info()

我遇到错误:

TypeError: arg must be a list, tuple, 1-d array, or Series

请提出解决方法的建议

1 个答案:

答案 0 :(得分:2)

pd.to_numeric仅适用于您提到的错误中所述的列表,元组,一维数组或系列。为了将其应用于DataFrame,您需要使用apply方法:

position1.apply(pd.to_numeric)

请注意,与大多数熊猫功能一样,默认情况下此操作不会“就地”进行