Python pandas.core.base.DataError:没有要聚合的数字类型
我是熊猫数据透视表功能的新手。 我遵循这个指南[1]。 正在删除现有excel文件并尝试创建表输出 我试图索引数据透视表,如Python pandas.core.base.DataError:没有要聚合的数字类型,python,pandas,Python,Pandas,我是熊猫数据透视表功能的新手。 我遵循这个指南[1]。 正在删除现有excel文件并尝试创建表输出 我试图索引数据透视表,如 def generate_invoice_summary_info(): file_path = 'output.xlsx'
def generate_invoice_summary_info():
file_path = 'output.xlsx'
df = pd.read_excel(file_path, sheet_name='Invoice Details', usecols="E:G,I,L:N")
df["Invoice Cost Centre"] = df["Invoice Cost Centre"].astype("category")
df["Invoice Cost Centre"].cat.set_categories(["RIM", "R3TM", "D3TM", "R5M"], inplace=True)
df['Price'] = df['Price'].astype(str)
df['Period From'] = df['Period From'].astype(str)
pd.pivot_table(df, index=["Invoice Cost Centre", "Invoice Category"])
我得到以下错误
pandas.core.base.DataError: No numeric types to aggregate
为什么会出现这个错误?
我试图根据发票成本中心、发票类别列总结我的表格
[1] 问题是aggfunc默认为'sum'且其列为数字,您需要更改
aggfunc=''。首先加入或aggfunc='我还没有使用aggfunc,请检查我上面的代码?这是否回答了您的问题?默认的aggfunc是sum
,然后您必须如我所说更改aggfunc。aggfunc有一个默认值,如果在使用methodtry时不更改它,就会产生错误:pd.pivot\u表(df,index=[“发票成本中心”,“发票类别”],aggfunc=''.join)
问题是aggfunc默认为“sum”,其列为数字,您需要更改aggfunc=''。首先加入或aggfunc='
@ansev我还没有使用aggfunc,请检查我上面的代码?这是否回答了您的问题?默认的aggfunc是sum
,然后您必须如我所说更改aggfunc。aggfunc有一个默认值,如果在使用methodtry时不更改它,则会产生错误:pd.pivot\u表(df,index=[“发票成本中心”,“发票类别”],aggfunc=''.join)