当前位置: 首页 > 面试题库 >

pandas DataFrame中的自定义浮动格式

督飞鸣
2023-03-14
问题内容

我有一个DataFrame

   0       1
0  3.000   5.600
1  1.200   3.456

为了演示的目的,我希望将其转换为

   0    1
0  3    5.6
1  1.2  3.456

达到此目的的优雅方法是什么(不会在的条目上无效循环DataFrame)?

或许更笼统地说 :是否有一种方法可以pandas使其始终这样做?例如pandas选项之一?

请注意,这pd.options.display.float_format = '{:,.0f}'.format将不起作用,因为它会给出固定的小数位数,而不是DataFrame像我上面指出的那样在各条目之间有所不同。


问题答案:

In [188]: df
Out[188]:
a b c
0 1.0000 2.2460 2.0000
1 3.0000 4.4920 6.0000
2 5.0000 6.7380 10.0000


In [189]: pd.options.display.float_format = '{:,.2f}'.format

In [190]: df.apply(lambda x: x.astype(int) if np.allclose(x, x.astype(int)) else x)
Out[190]:
   a    b   c
0  1 2.25   2
1  3 4.49   6
2  5 6.74  10

更新:

In [222]: df
Out[222]:
       0      1
0 3.0000 5.6000
1 1.2000 3.4560

In [223]: df.applymap(lambda x: str(int(x)) if abs(x - int(x)) < 1e-6 else str(round(x,2)))
Out[223]:
     0     1
0    3   5.6
1  1.2  3.46

注意:请 注意,.applymap()方法的速度非常慢,因为它对map(func, series)DataFrame中的每个系列都这样做



 类似资料:
  • 有没有办法在Intellij中创建自定义的代码格式顺序?更具体地说,当一起按Option+Command+L时,我试图更改默认格式,并按类型格式化导入。

  • 是否可以使用用户扩展在Selenium IDE中创建自定义命令.js并使其能够将自身更改为自定义导出格式,如果是这样,如何? 我将使用SeleniumIDE记录测试,这些测试将以完全自定义的Java格式导出,作为全自动测试系统的一部分运行。格式不是JUnit,而是每个测试都是它自己的类,并根据整个系统的输入动态加载。 我想要做的是在Selenium IDE中创建一个名为“take snapshot

  • 我想通过LLCP在一个NDEF记录中的NDEF消息中传输一个自定义数据(或者有效载荷可能会被分块到几个NDEF中)。传输的内容是具有特定格式的文件,仅在特定应用中具有意义。那么,指定NDEF头的最佳方法是什么? 1) 将TNF设置为0x04(NFC论坛外部类型),0x03(绝对URI)或0x05(未知)?0x04将在 TYPE 字段中具有自定义相对 URI,如果是绝对 URI,则0x03绝对 UR

  • 问题内容: 我正在尝试使用日期格式索引数据。如Elasticsearch 日期格式文档中所述,我需要使用自定义日期格式。我指的是DateTimeFormat文档,并且各自的格式是。 我能够创建映射,但是当我尝试索引数据时会给我错误。 对应: 索引文件: 错误:- 有什么建议吗? 问题答案: 本月使用三个“ M”。引用API文档: 月:3岁或以上,请使用文字,否则请使用数字。 因此,您提供的输入的正

  • 本文向大家介绍.NET Framework 格式:自定义DateTime格式,包括了.NET Framework 格式:自定义DateTime格式的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 本文向大家介绍AngularJS中的Directive自定义一个表格,包括了AngularJS中的Directive自定义一个表格的使用技巧和注意事项,需要的朋友参考一下 先给大家说下表格的需求: ● 表格结构 ● 点击某个th,就对该列进行排序 ● 可以给表头取别名 ● 可以设置某个列是否显示 ● 表格下方有一行显示总行数 我们希望表格按如下方式展示: 以上,datasource的数据源来自co

  • 在自定义arrayAdapter中实现自定义getFilter时遇到问题。实际上,我不知道如何实现它。尝试了各种代码,但仍然没有成功。这是我的自定义阵列适配器。 这是ListTO课程。 这是布局图。 这里的搜索关键字来自“inputSearch”编辑文本。 这是文本更改的侦听器。 谢谢

  • 本文向大家介绍jquery自定义表格样式,包括了jquery自定义表格样式的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jquery自定义表格样式实现代码。分享给大家供大家参考。具体如下: 运行效果截图如下: 上面这张图有3种状态,默认状态(灰白相间),鼠标悬浮状态(绿色),鼠标点击状态(黄色),是如何实现的呐? Html代码如下: 插件实现代码如下: 有些时候我们可能并不需要鼠标点击后