gpt4 book ai didi

python将元组列表制作成确定大小的间隔

转载 作者:行者123 更新时间:2023-11-28 22:58:49 24 4
gpt4 key购买 nike

我在一个文件中有 x 值和相应的计数。我将其读作以下形式的元组列表

dat = [(0.02, 1), 
(0.0211, 1),
(0.021, 1),
(0.023, 1),
(0.0251, 1),
(0.12, 2),
(0.141, 1),
(0.14, 3),
(0.171, 1),
(0.462, 9),
(0.467, 10),
(0.478, 15),
(0.804, 20),
(0.815, 31),
(0.815, 24),
(2.72, 164),
(2.78, 147),
(2.8, 128),
(5.78, 6),
(5.83, 1),
(5.8603, 1),
(5.94, 17),
(8.63, 3),
(8.87, 5),
(18.601, 1),
(19.0, 7),
(21.0, 2),
(22.0, 4)]

如何将这些转换为相等的间隔计数。例如,增量为 0.2 的间隔。

x    count
0 0
0.5 12
1.0 75
1.5 0
2.0 0
2.5 0
3.0 439
...

最佳答案

使用 pandas 的方法:

In [74]: df = pd.DataFrame.from_records(dat).set_index(0)

In [75]: counts = df.groupby(lambda x: floor(x / 0.5) * 0.5).count()

In [76]: counts
Out[76]:
1
0.0 12
0.5 3
2.5 3
5.5 4
8.5 2
18.5 1
19.0 1
21.0 1
22.0 1

您可以用零计数填充间隔:

In [77]: counts.reindex(np.arange(0, 22, 0.5)).fillna(0)
Out[73]:
1
0.0 12
0.5 3
1.0 0
1.5 0
2.0 0
2.5 3
3.0 0
3.5 0
4.0 0

etc ...

关于python将元组列表制作成确定大小的间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13517281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com