【发布时间】:2018-04-06 23:56:10
【问题描述】:
我有以下数据框:
High counts Total
11 1.2492 2 2.4984
1 1.2466 2 2.4932
20 1.2574 1 1.2574
19 1.2547 1 1.2547
18 1.2523 1 1.2523
我已经使用以下行来分组
hg = grps.groupby("High").size().reset_index(name='counts')
我正在尝试按以下格式按此 DataFrame 进行分组。但是 High 的值不能改变。
{:.3f} # 1.249, 1.246, 1.257 ...
是否可以这样做,或者我应该创建一个新的 DataFrame?
编辑:
这是预期的输出
High counts Total New
11 1.2492 2 2.4984 1.249
1 1.2466 2 2.4932 1.246
20 1.2574 1 1.2574 1.257
19 1.2547 1 1.2547 1.254
18 1.2523 1 1.2523 1.252
【问题讨论】:
-
你说你想按那个分组(是的,这是可能的)但是你想从中得到什么?如果进行聚合,最终的行数会比开始时少。在这种情况下,您将如何在多个可能的行中进行选择?你可能想转型?你最后没有告诉我们你想要什么。这是这个问题的关键部分。
-
其实我做到了。以下行是输出:{:.3f} # 1.249, 1.246, 1.257 ...
-
@DonCoder - 你需要
df['New'] = df['High'].map('{:.3f}'.format)吗?还是df['New'] = df['High'].round(3)?
标签: python pandas dataframe rounding