从Thingspeak阅读:每天平均是容易的。我怎样得到一个月平均?

28日视图(30天)
我从Thingspeak使用REST API来读取数据,这很有效:
每天这个请求正确地返回一个值。但是我需要一个月平均每月——一个值。理想的类似:
有办法实现这样的?
2的评论
Hakon Dahle
Hakon Dahle 2019年11月15日
谢谢你的回复!
问题:我有一个大数据集(每小时10年的测量,即约90.000测量存储在单个Thingspeak通道)。
在我的手机应用程序,我想创建一个图表来显示一个趋势。策划90.000点在一个单一的图表没有意义。当然使用每日平均帮助很大——这导致了大约3600点。但是对于我来说这仍然是图表的需要。
我想阴谋蒙特平均超过10年,这应该成为一个漂亮的手机应用程序和紧凑的图表。不使用所有90.000点也使得移动应用更快——抓取和策划10 x 12点最好。
当然我可以做所有的平均在我的应用程序,但这仍然意味着我必须获取所有的数据从Thingspeak平均/减少应用程序中的数据本身。理想我想请求10年的月度平均值(即120数据点)。
如果有一种方法可以做到这一点在Matlab如果能有一个指针指向一些类似的例子我不熟悉Matlab(我做我的大多数客户端和服务器端JavaScript / node . js)。

登录置评。

接受的答案

克里斯托弗Stapels
克里斯托弗Stapels 2019年11月15日
有内置的模板代码来帮助您开发MATLAB代码。如果你去MATLAB分析或MATLAB可视化应用程序,您可以选择从模板选择创建一个应用程序的新实例。
这是一个教程使用其中的一个 模板来计算平均值 :
在你的例子中,我想你会proably想预处理的数据并将其存储在另一个频道。读取仅限于8000点,所以你希望能够阅读所有的数据在一个电话。
我会推荐编写一个脚本,该脚本读取数据并写入每日avaerages到另一个频道。那么你的手机应用程序可以读取的值或API调用图表导出频道。展望未来,你可以设置一个timeControl写每日平均每天导出通道(Vinod建议)。Historicall你可能需要几批处理它们。
我可以提供更多细节如果你坚持代码。
1评论
Hakon Dahle
Hakon Dahle 2019年11月17日
你好,
谢谢!我将会与我们的建议的核心——“预处理数据并将其存储在另一个频道”。我看着使用Matlab,但我担心将有点陡峭的学习曲线。我只会使用javascript /节点。js在服务器端为这项任务。调度节点。js每月运行一次更新“其他”频道应该很容易。我在使用javascript处理每月的平均(以及创建图表)和我喜欢的结果: https://jsfiddle.net/hdahle/6wLhbc7p/151/
- h

登录置评。

答案(1)

克里斯托弗Stapels
克里斯托弗Stapels 2019年11月18日
编辑:克里斯托弗Stapels 2023年1月21日
我也喜欢看你的结果。但是我怕它让一群API请求到服务器在一个大破裂。偶尔的好,但你经常使用这样的代码,你可能最终引发速率限制ThingSpeak服务器的响应。代码已经生成月度数据,您可以编写的历史数据导出频道,并降低未来的负担。
如果你不想用自己的服务器端资源,您可以使用TimeControl安排定期MATLAB代码运行。我知道不想使用一种新的语言,但是MATLAB很难很容易学习。
以防你正在考虑它,格式会看起来像这样:
创建一个新的MATLAB分析伪代码
编辑/评论
numDays = 30;%为每月
readChannelId = 123455;
writeChannelId = 543211;
myReadKey =“XXXXXXXXXXXXXXXX”;
myWriteKey =“yyyyyyyyyyyyyyyy”;
myData = thingSpeakRead (readChannelID,“ReadKey”myReadKey,“OutputFortmat”,“时间表”,“numDays”,numDays);
aveData =调整时间(myData,“普通”,“的意思是”,“步伐”天(numDays));
thingSpeakWrite (writeChannelId aveData,“WriteKey”,writeAPIKey);
然后使用TimeControl每numDays运行分析。
3评论
克里斯托弗Stapels
克里斯托弗Stapels 2023年1月21日
谢谢你的语法的建议,我上面有固定它。
我很抱歉听到你对我们的文档,其realtively众所周知的高质量与大多数报道。如果你提供一个例子,你不喜欢,我可以看看它。

登录置评。

社区

更多的答案ThingSpeak社区

类别

找到更多的在行为数据帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!