如何将Python数据框中的数字列导出为带逗号分隔符的整数列,并能够将它们相加、相除、相乘?

问题描述 投票:1回答:1

我有一个数据框,里面有几列数字。我想把它们导出为整数,但对于超过999的数字,要用逗号分隔符。

我可以做到这一点,但当它们被导出时,我无法操作这些数字,好像它们因为逗号而变成了字符串。

我试了一下,没有成功。

format_mapping={'Balance': '{:,.0f}'}

for key, value in format_mapping.items():
   cash_tracker_df[key] = cash_tracker_df[key].apply(value.format)

我读了下面的内容才知道我现在的情况。

Python Pandas使用Dict Mapping对Dataframe中的每一列进行格式化处理。

https:/xlsxwriter.readthedocs.iotutorial02.html。

我用的是pandas和xlsxwriter。

任何帮助将是感激的。

python excel pandas xlsxwriter
1个回答
1
投票

你应该使用 num_format 属性时,定义格式。

import pandas as pd

df = pd.DataFrame({'A': [1,2,3,4,1000,1001,10000,10001]})

writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', index=False)
workbook = writer.book
worksheet = writer.sheets['Sheet1']

cellFormat = workbook.add_format({'num_format': '#,##'})
worksheet.set_column('A:A', 10, cellFormat)

writer.save()

输出。

enter image description here

最后,如果你想使用小数点分隔符,你应该使用

'num_format': '#,##.00'。

更多信息请看 此处

© www.soinside.com 2019 - 2024. All rights reserved.