PHP / MySQL有效地发现数据中的特定模式

时间:2017-03-22 15:46:32

标签: php mysql

我有一个arduino抓住LDR的外部光线,间隔1分钟。因此,我将每天的数据存储为具有百分比灯和时间戳的时间序列数据集。数据如下所示(尽管存储在mysql数据库中)并生成此图:

{“Timestamp”:“2017-03-22 14:48:48”,“ExternalLight”:“99.5”},{“Timestamp”:“2017-03-22 14:47:46”,“ExternalLight “:”99.6“},{”时间戳“:”2017-03-22 14:46:44“,”ExternalLight“:”99.8“},{”时间戳“:”2017-03-22 14:45:42 “,”ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14:44:40“,”ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14 :43:38“,”ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14:42:36“,”ExternalLight“:”99.8“},{”Timestamp“:”2017- 03-22 14:41:34“,”ExternalLight“:”99.7“},{”Timestamp“:”2017-03-22 14:40:32“,”ExternalLight“:”99.6“},{”Timestamp“ :“2017-03-22 14:39:30”,“ExternalLight”:“99.5”},{“Timestamp”:“2017-03-22 14:38:28”,“ExternalLight”:“99.5”}, {“Timestamp”:“2017-03-22 14:37:26”,“ExternalLight”:“99.6”},{“Timestamp”:“2017-03-22 14:36:24”,“ExternalLight”:“ 99.6“},{”Timestamp“:”2017-03-22 14:35:22“,”ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14:34:20“,” ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14:33:18“,”ExternalLight“:”99.8“},{”Timestamp“:”2017-03-22 14:32: 16" , “ExternalLight”:“9 9.7“},{”Timestamp“:”2017-03-22 14:31:14“,”ExternalLight“:”99.6“},{”Timestamp“:”2017-03-22 14:30:12“,” ExternalLight “:” 99.5" }, ....... enter image description here

我正在寻找最有效的方法来识别两个特定的变化 - 它在早上变亮,在晚上变暗。是否可以使用MySQL查询执行此操作?或者我需要选择所有数据并使用PHP处理它?我不确定最好的开始方式所以我正在寻找一些指导!

非常感谢,

克里斯

1 个答案:

答案 0 :(得分:0)

简短的回答是,这是一个数据分析问题,MySQL和PHP都不适合。我一般不建议尝试在PHP中做这样的事情。我非常怀疑它在MySQL中是否可行。为数据分析和处理而设计的语言可以更好地工作。就个人而言,我使用python来完成这些任务,它们拥有像numpy / scipy / matplotlib这样的优秀工具。你的情节是什么?如果这是一种实际的编程语言,那可能是一个不错的选择。

要做的是找出用于衡量这些事情的算法,然后找出如何用您选择的语言实现该算法。现实情况是,您提出的问题比初看起来要复杂得多。采用时间序列和构建算法来可靠地提取诸如“日出”和“日落”之类的信息可能会令人惊讶地参与其中,尤其是当你考虑到诸如变化的天气条件等事情时。这可能是一个相当直接的问题。 ,但你真正需要的(从它的声音),无助于选择技术(即MySQL或PHP),但有助于构建一个实际的算法。这可能是也可能不是最好的地方。你以前做过任何数据分析吗?