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

从Python Pandas聚合结果格式化/抑制科学符号

龙兴学
2023-03-14
问题内容

如何对熊猫的groupby运算的输出进行格式修改,从而产生非常大的科学计数法?

我知道如何在python中进行字符串格式化,但是在这里应用它时我很茫然。

df1.groupby('dept')['data1'].sum()

dept
value1       1.192433e+08
value2       1.293066e+08
value3       1.077142e+08

如果我转换为字符串,这会抑制科学计数法,但是现在我只是想知道如何设置字符串格式并添加小数。

sum_sales_dept.astype(str)

问题答案:

当然,我在评论中链接的答案不是很有帮助。你可以像这样指定自己的字符串转换器。

In [25]: pd.set_option('display.float_format', lambda x: '%.3f' % x)

In [28]: Series(np.random.randn(3))*1000000000
Out[28]: 
0    -757322420.605
1   -1436160588.997
2   -1235116117.064
dtype: float64

我不确定这是否是首选的方法,但是可以。

仅出于美学目的将数字转换为字符串似乎是个坏主意,但是如果你有充分的理由,这是一种方法:

In [6]: Series(np.random.randn(3)).apply(lambda x: '%.3f' % x)
Out[6]: 
0     0.026
1    -0.482
2    -0.694
dtype: object


 类似资料:
  • 如何修改大熊猫中产生非常大数字的科学符号的组比操作输出的格式? 我知道如何在python中进行字符串格式设置,但在这里应用它时,我不知所措。 如果我转换成字符串,这会抑制科学记数法,但现在我想知道如何设置字符串格式和添加小数。

  • 问题内容: 如何对pandas的groupby运算输出的格式进行修改,从而产生大量的科学计数法? 我知道如何在python中进行字符串格式化,但是在这里应用它时我很茫然。 如果我转换为字符串,这会抑制科学计数法,但是现在我只是想知道如何设置字符串格式并添加小数。 问题答案: 当然,我在评论中链接的答案不是很有帮助。您可以像这样指定自己的字符串转换器。 我不确定这是否是首选的方法,但是可以。 仅出于

  • 我来自SQL世界,从MongoDB开始,我仍然有点困惑。。。我有一个这样的收藏 还有我的问题, 我正在使用角和NodejS Express从数据库中获取数据,我以这种格式获取数据 因此,我想知道是否有一种方法可以在没有id键的情况下获得此查询结果, 像这样:

  • 我正在使用模式"#0.00##"来格式化数字,它可以像预期的那样为大多数输入工作。但有时源号较小(即:6.84378E-05),并被转换为"0,0001"。 是否有可能仅使用科学符号格式化这些数字(不符合标准模式)?保持所有“正常”数字不变?用单一模式。 我必须只使用一个DecimalFormal模式,没有任何额外的代码。 编辑:为了更好地解释为什么我需要单精度格式:我使用的是一个外部库,只能定义

  • 你能帮我弄清楚为什么这个查询不返回结果吗? 我使用ogr2ogr导入了一个形状文件将其转换为GeoJson,然后使用以下命令将其导入到Mongo:“mongoimport--db ht--集合设施 下面是一个示例文档,以及未返回任何内容的查询和索引: 以下是文档(为简洁起见删除了属性): } 这是索引。我尝试了“geometry”和“geometry.coordinates”,结果相同: }

  • 问题内容: 我已经编写了自己的聚类例程,并希望生成树状图。最简单的方法是使用scipy树状图功能。但是,这需要输入与scipy链接功能产生的格式相同。我找不到如何格式化其输出的示例。我在想是否有人可以启发我。 问题答案: 这来自scipy.cluster.hierarchy.linkage()函数文档,我认为这是对输出格式的清晰描述: 返回一个( n -1)4矩阵Z。在第 i 次迭代中,将索引为Z