这期内容当中小编将会给大家带来有关如何进行iPhone步行数据的分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
我将展示如何利用 pandas 和 ggplot 来分析 iPhone 的步行数据,我主要利用 Rodeo(Yhat’s 的 IDE)来进行数据分析。
数据收集
首先我想从我的 iPhone 中导出用于分析的步行数据,Quantified Self 实验室的工作人员开发了一个数据提取的便捷工具——QS Access。
以下是一组关于步行数据的截图:
QS Access 应用可以提取出一个包含某个时期内步行数据的 CSV 文件,该文件中包含三列变量——开始时点、结束时点和步数。
数据分析
我主要利用 pandas 中的时间序列分析工具来分析数据,当 Wes McKinney开始处理 pandas 项目时,他就已经在一家投资管理公司工作,该行业广泛依赖于时间序列分析方法。因此,pandas 中包含非常多的时间序列分析函数。
首先,当我们拥有了时间序列数据后,我们可以定义参数 parse_dates 使得 pandas 可以正确地处理时间序列数据。对于我们来说,结束时点变量并没有包含额外的有价值的信息,所以我们在分析过程中将不考虑该变量的情况。
***我们将开始时点变量设定为索引变量,这个设定有助于我们进一步的数据分析。
每小时步行数据
如何快速地绘图分析现有的步行数据呢?
很不幸的是,我们无法从上图中得到比较有价值的信息,我们应该如何提高可视化效果呢?我想到一个好主意——我们可以利用 pandas 中的 resample 函数来改变数据集的时间粒度。
更精确地说,我们可以利用 downsampling 的方法来降低时间的频度。比如,我们可以采集每小时的数据,然后利用重抽样和汇总计算的方法获得日度数据、周度数据和月度数据。
获取每天步行数据
从上图中我们可以看出,每天的步数存在一个上升趋势,随着时间的推移,步行的路程越长。
获取每周和每月步行数据
和上述代码一样,只要将 W 和 M 传递到 resample 函数中就能得到每周和每月的步行数据。
由于我更关心每天的运动情况,所以我将利用平均函数来计算每周或每月中平均每天的步行情况。具体的代码如下所示:
更深入的分析
我很好奇的一件事是:工作日的运动量是否大于周末的运动量?我们可以利用 weekday 和 weekday_name 两个方法来帮助分析。对于每个时间戳数据,前者可以得知它属于一周中的第几天,而后者可以得知该时间点对应的时间名字信息。添加完这两个新变量后,我们还可以添加一个布尔变量来表示某个时间点是否是周末。
此外,我们还可以根据变量 weekend_bool 来做分类汇总处理,并对比两组数据的差异情况。
从上述结果中可以看出,周末期间的每天平均步数是 11,621 步,中位数是 10,228,而工作日期间的每天平均步数是 10,146 步,中位数是 9,742,因此我们可以认为周末期间的运动量更大。
趋势分析
***让我们来讨论下上文提到的上升趋势,四月初由于工作的原因,我从夏洛特搬到了纽约城,担任 Yhat的软件工程师。
我想知道经过这次搬家之后,我每天的步行情况有没有发生改变?我们可以利用上文分析周末与工作日步行情况的方法来分析这个问题。
从上图中我们可以轻易地看出自从搬到纽约城之后,每天的运动量确实增加了。但这是由多方面因素共同决定的,比如搬到纽约城后我的跑步次数增加了,这会增加每天的平均步数。如果想要进行更深入的分析,我们需要获取更多的数据支持,由于篇幅问题,我们将在之后的文章中继续分析。
上述就是小编为大家分享的如何进行iPhone步行数据的分析了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。