- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是一名初学者,正在学习 python (+pandas),希望我能很好地解释这一点。我有一个超过 300 万行的大型时间序列 pd 数据框,最初有 12 列跨越多年。这涵盖了从不同地点取票的人,这些地点用身份证号表示(其中 350 个)。每行是一个实例(一张票)。我搜索了很多问题,例如 counting records per hour per day和 getting average per hour over several years .但是,我遇到了包含“Id”变量的麻烦。我希望获得每小时、一周中的每一天(周一至周五)和每个车站的购票人数的平均值。
我有以下内容,将日期时间设置为索引:
Id Start_date Count Day_name_no
149 2011-12-31 21:30:00 1 5
150 2011-12-31 20:51:00 1 0
259 2011-12-31 20:48:00 1 1
3015 2011-12-31 19:38:00 1 4
28 2011-12-31 19:37:00 1 4
使用 groupby
和 Start_date.index.hour
,我似乎无法包含“Id”。
我的替代方法是将小时从日期中分离出来并具有以下内容:
Id Count Day_name_no Trip_hour
149 1 2 5
150 1 4 10
153 1 2 15
1867 1 4 11
2387 1 2 7
然后我首先得到计数:
Count_Item = TestFreq.groupby([TestFreq['Id'], TestFreq['Day_name_no'], TestFreq['Hour']]).count().reset_index()
Id Day_name_no Trip_hour Count
1 0 7 24
1 0 8 48
1 0 9 31
1 0 10 28
1 0 11 26
1 0 12 25
然后使用groupby和均值:
Mean_Count = Count_Item.groupby(Count_Item['Id'], Count_Item['Day_name_no'], Count_Item['Hour']).mean().reset_index()
但是,由于平均值不正确,这并没有给出预期的结果。我希望我已经清楚地解释了这个问题。我在寻找每个 Id 每天每小时的平均值,因为我计划在对这些组应用预测模型之前进行聚类以将我的数据集分成几组。
任何帮助将不胜感激,如果可能的话,请解释我在代码方面或我的方法上做错了什么。
提前致谢。
我已经对其进行了编辑,以使其更清晰一些。写一个 sleep 不足的问题可能是不可取的。我开始使用的玩具数据集:
Date Id Dow Hour Count
12/12/2014 1234 0 9 1
12/12/2014 1234 0 9 1
12/12/2014 1234 0 9 1
12/12/2014 1234 0 9 1
12/12/2014 1234 0 9 1
19/12/2014 1234 0 9 1
19/12/2014 1234 0 9 1
19/12/2014 1234 0 9 1
26/12/2014 1234 0 10 1
27/12/2014 1234 1 11 1
27/12/2014 1234 1 11 1
27/12/2014 1234 1 11 1
27/12/2014 1234 1 11 1
04/01/2015 1234 1 11 1
我现在意识到我必须先使用日期并得到类似的东西:
Date Id Dow Hour Count
12/12/2014 1234 0 9 5
19/12/2014 1234 0 9 3
26/12/2014 1234 0 10 1
27/12/2014 1234 1 11 4
04/01/2015 1234 1 11 1
然后计算每个 Id、每个 Dow、每小时的平均值。想要得到这个:
Id Dow Hour Mean
1234 0 9 4
1234 0 10 1
1234 1 11 2.5
我希望这能让它更清楚一点。我的真实数据集跨越 3 年,有 300 万行,包含 350 个 ID 号。
最佳答案
你的问题不是很清楚,希望对你有帮助:
df.reset_index(inplace=True)
# helper columns with date, hour and dow
df['date'] = df['Start_date'].dt.date
df['hour'] = df['Start_date'].dt.hour
df['dow'] = df['Start_date'].dt.dayofweek
# sum of counts for all combinations
df = df.groupby(['Id', 'date', 'dow', 'hour']).sum()
# take the mean over all dates
df = df.reset_index().groupby(['Id', 'dow', 'hour']).mean()
关于python - 时间序列: Mean per hour per day per Id number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30495163/
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我试图查看当天的车辆销量,并创建另外两个列来告诉我过去 10 天的销量和过去 20 天的销量。同一天和同一辆车可能有多个销售。我的目标是获取不同的车辆和日期并查看他们的销售数量。 N 天计数应与该行中
我需要每天 12 小时在 azure 上使用 VM,在 EOD 时关闭并在第二天早上再次启动。我习惯使用 WASABi block 进行自动缩放。 What strategy should I use
我只需要显示天/天的后缀,我该如何实现?它不起作用: java.lang.IllegalStateException: No field to apply suffix to.. privat
尝试使用 HTML 表单和 PHP 更新数据库字段时出现上述错误消息。不确定我的代码有什么问题(我知道它不安全,我只是将它用于个人用途)。我已经检查过,数据库 days 确实存在。 HTML:
谷歌搜索这个,但找不到答案。想知道这两个脚本是否有区别? +3 天: echo date( 'd.m.Y H:i:s', strtotime( '+3 day' ) ); +3 天: echo dat
我试图在某一天显示文本“A Day”,然后在第二天显示“B Day”。我可以使用偶数或奇数函数来执行此操作,然后配置 getDay 对象,但我尝试执行此操作,无论日、月或年如何。 例如,今天可能是“A
在 stack-overflow 中,有一个名为“爱好者”的徽章,通过“连续 30 天每天访问该网站”获得 如何在sql server中编写这个查询? 最佳答案 创建一个表 Id, LastVisit
$('') .attr('label', day) .attr('value', day) if(myDate.getDate(
如果我使用这个函数 pd.DatetimeIndex(dfTrain['datetime']).weekday 我得到了日期,但是我找不到任何给出日期名称的函数...所以我需要将 0 转换为星期一,将
I know I can use relativedelta to calculate difference between two dates in the calendar. However
我正在使用 DayPickerInput,我将其设置为 this (具有 2 天选择器输入的范围)。我想始终显示覆盖,我不想隐藏它。我知道 showOverlay Prop ,但它只在初始渲染期间显示
如何将类添加到 react-day-picker 的今天按钮? 从文档中似乎是可能的: http://react-day-picker.js.org/api/DayPicker#classNames
我需要将一个简单的“3.days”字符串转换为在屏幕上打印“3 days”的内容,该字符串将根据语言使用适当的语言环境来打印单词。 我想可能有一种我似乎找不到的在 Rails 上执行此操作的简单方法。
我想从 Github API GET,每天的贡献数。我正在制作一个网络应用程序,将 github 贡献的数量与我玩的 Dota 2 比赛的数量进行比较。 这张图应该能更清楚地说明事情。 http://
我想在一个月的第三天和最后一天运行一项作业。 下面的 cron 表达式正确吗? “0 0 3 3,L * * ?” 当我在 www.cronmaker.com 中尝试它时,它说这是一个无效的表达式。
我正在尝试为图像中的特定事件设置重复提醒。代码工作正常,但发生了一些正在改变创建事件的事情。请检查以下详细信息。 如果我尝试从循环中设置提醒,它会起作用,但如果重复出现,就会出现上述问题。 检查图像上
我知道新的一天(或小时/分钟,就此而言)没有事件监听器。但在我的 Chrome 扩展程序中,我需要知道新的一天何时开始,这意味着我必须使用 setInterval 函数来确定一天何时发生变化。但是,我
我有一个名为 stockins 的 table 和一个 column stock。因为我想在一周的第一天和一周的最后一天之间找到 max(stock)。 为此,我使用以下查询 select max(s
我们如何将 t.integer :missed 与 t.text :committed 集成,以便 当用户在 :level 中检查他 :missed 3 :committed 天时,他必须重新启动 :
我是一名优秀的程序员,十分优秀!