所以我用操作系统模块从文件名中创建了一个DF
文件名包括美元金额,我希望能够创建一行,该行的总额仅为DF(索引3(的该列中的金额
然而,当我遵循以下代码结构时:
File_Name.loc['Total'] = File_Name.sum()
我得到这个:
Invoice ... Amount
30 6515 ... 401.01
Total 0822OH082522KTR1987000084201987000084481987000... ... 478.88550.0030.1032.3912.0432.521020.4729.1442...
我希望它看起来像这样:
Invoice Vendor Amount
30 6515 Expense 401.01
Total 198556.79
任何帮助都将不胜感激!
Pandas刚刚在Styler
中发布了一个新功能(v1.5.0(。CCD_ 2用于数据的显示,而CCD_。因此,将不同的DataFrames
组合和构造用于显示目的的能力是有用的。Styler
允许为不同的表以不同的方式配置格式化输出。例如,一列可能有整数值,但算术平均值通常是带有多个小数的浮点值。
在讨论这个用例时,请参阅Styler.concat
的文档。https://pandas.pydata.org/docs/dev/reference/api/pandas.io.formats.style.Styler.concat.html
您在Amount
中得到的长数字可能是字符串串联的结果:
'478.88' + '550.00' + '30.10' + '32.39'
输出
478.88550.0030.1032.39
因此,第一步是将列Amount
强制转换为带有File_Name['Amount'].astype('float')
的浮点。
您可以添加Amount
的总和,并使用获得您想要的视觉效果
df.loc['Total', 'Amount'] = df['Amount'].sum()
df.loc['Total'] = df.loc['Total'].fillna('')
尽管如此,我强烈建议不要把panda当作Excel来使用。虽然Excel样式在如此繁重的界面下工作时很方便,但从编程的角度来看,这是有问题的:现在你将有一个额外的数据点,它在Amount
中有一个大值,并且有很多空字符串。