Python 在空数据帧上聚合时,Pandas agg函数将结果列类型转换为float64。如何确保类型保持一致?

Python 在空数据帧上聚合时,Pandas agg函数将结果列类型转换为float64。如何确保类型保持一致?,python,pandas,Python,Pandas,屈服 import pandas from decimal import Decimal base_data = pandas.DataFrame(data = {'name':'Sarah', 'balance': Decimal(1)}, index = [0]) ## drop the first row and aggregate summary_data = base_data.drop(0).groupby('name').agg({'balance' : 'sum'}) s

屈服

import pandas
from decimal import Decimal


base_data = pandas.DataFrame(data = {'name':'Sarah', 'balance': Decimal(1)}, index = [0])

## drop the first row and aggregate
summary_data = base_data.drop(0).groupby('name').agg({'balance' : 'sum'})

summary_data.balance.dtype
而不是应该的
Decimal
dtype('O')


这个问题在我的代码后面会导致一个类型错误,当我执行左连接时,用零填充,然后尝试向浮点值添加另一个十进制数(64)

使用
astype

dtype('float64')
summary_data = base_data.drop(0).groupby('name').agg({'balance' : 'sum'}).astype(base_data.dtypes)