如何更改熊猫数据框中单个单元格的格式?

时间:2019-06-20 16:57:14

标签: pandas dataframe format jupyter-notebook

“我的数据”框包含不同类型指标的值摘要。它们都是浮点数,但是我需要在预算中显示“ $”,并且底部的两行显示为%而不是小数。我提供了屏幕截图,因为我不知道如何在stackoverflow中正确显示我的jupyter笔记本代码。

enter image description here

我尝试使用iLoc .map .format,但是没有用。

enter image description here

district_summary.iloc[[6,1].map('{:,%.2f}'.format)]
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-40-a2f927a382d3> in <module>
----> 1 district_summary.iloc[[6,1].map('{:,%.2f}'.format)]

AttributeError: 'list' object has no attribute 'map'

我需要预算显示的前面有$,没有小数点,并且底部2行的两个百分比显示为%xx.xx

1 个答案:

答案 0 :(得分:0)

这是使其运行的一种方法,但是,存在更好的解决方案。将df转换为字符串,以便单元格内的所有数据类型保持一致。即'%'或'$'不能被理解为浮点数。

pd.set_option('mode.chained_assignment', None)
df['Value'][6:8] = df['Value'][6:8]*100
df = df.applymap(str)
df['Value'][2] = '$' + df['Value'][2]
df['Value'][:3] = df['Value'][:3] + '0'
df['Value'][6:8] = '%'+ df['Value'][6:8] + '0'

字符串数据框结果:  enter image description here