# 如果表格为空, 那么透视将会只保留索引列
my_df = pd.DataFrame(columns= ['a', 'b'])
my_df.pivot_table(
index=['a'],
columns=['b']
)
'''每日应收款_python_外贸文件缺失_堪错'''
# ob_waim.df8_4_1 # 里包含了'未收款人民币'列
# 但是如下代码中, 如果ob_waim.df8_4_1.shape[0] == 0, 结果就会失去values='未收款人民币' 这一列, 而只剩下索引index= '客户代码'
'''
df_WSK = ob_waim.df8_4_1.query(
"客户代码!= 'nan'"
).pivot_table(
index= '客户代码',
values= '未收款人民币',
aggfunc= np.sum
)
'''
# 要么忽视任凭报错异常,反正外贸没上班就不需要数据,要么,解决办法是,
# 1)增加判断if self.df8_4_1.shape[0] == 0: self.df_WSK = pd.DataFrame(columns=['未收款人民币']); self.df_WSK.index.name = '客户代码'
'''
# 筛选 发货单号不为空 客户代码不为空
# 透视求和 客户代码- 未收款人民币
# 如果外贸文件缺失,空文件透视,会只保留索引列,没有其他列,即结果.columns=Index([], dtype='object'),因此需要增加防空表格判断
if self.df8_4_1.shape[0] == 0:
self.df_WSK = pd.DataFrame(columns=['未收款人民币'])
self.df_WSK.index.name = '客户代码'
else:
self.df_WSK = self.df8_4_1.query(
"客户代码!= 'nan'"
).pivot_table(
index= '客户代码',
values= '未收款人民币',
aggfunc= np.sum
)
'''