gpt4 book ai didi

Python:如何根据星期几获取数据框中某个范围内的项目数?

转载 作者:行者123 更新时间:2023-12-04 14:59:39 25 4
gpt4 key购买 nike

我正在编写数据框如下所示的 Python 代码:

        score      start_time                      date
0 2.551020 1611848652 2021-01-28 09:44:12-06:00
1 2.596491 1613653380 2021-02-18 07:03:00-06:00
2 2.045455 1614137036 2021-02-23 21:23:56-06:00
3 2.260870 1612352809 2021-02-03 05:46:49-06:00
4 2.654867 1614185082 2021-02-24 10:44:42-06:00
... ... ... ...
208258 2.683871 1613422487 2021-02-15 14:54:47-06:00
208553 2.568000 1612922522 2021-02-09 20:02:02-06:00
208580 2.943925 1612786920 2021-02-08 06:22:00-06:00
208584 2.160256 1612550480 2021-02-05 12:41:20-06:00
208683 2.315385 1612667953 2021-02-06 21:19:13-06:00

我需要在一周中的某一天的给定范围内计算分数

预期输出

           2.0-2.2    2.2-2.5   2.5-3.0
Day
Friday 10000 12344 23123
Monday 24892 24892 24892
Saturday 23424 23424 23424
Sunday 41232 23132 23315
Thursday 41232 23152 4123
Tuesday 41232 53457 6663
Wednesday 41232 23131 34423

我应该能够根据数据框中的 date 获得 2.0-2.2、2.2-2.5 和 2.5-3.0 范围内的分数计数,该数据帧应按日期显示本周。

我该怎么做?我已经在这一步卡住了很长一段时间。

注意:Expected Output 中给定的计数只是为了便于理解而给出的随机值。

最佳答案

pd.cutcrosstab

我们可以使用 pd.cutscore 列中的值分类/分类到离散区间中,然后我们可以使用 crosstab 创建一个频率表

pd.crosstab(df['date'].dt.day_name(), pd.cut(df['score'], [2, 2.2, 2.5, 3.0]))

score      (2.0, 2.2]  (2.2, 2.5]  (2.5, 3.0]
date
Friday 1 0 0
Monday 0 0 2
Saturday 0 1 0
Thursday 0 0 2
Tuesday 1 0 1
Wednesday 0 1 1

关于Python:如何根据星期几获取数据框中某个范围内的项目数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67230261/

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