我正在尝试从https://www.alphavantage.co/获取CSV文件并将值传递给J进行处理。
我尝试了httpget和web / gethttp(基于curl),但是两者都碰壁了,至于httpget,我不知道如何将https传递给httpget函数。 我根本无法使gethttp正常工作。
链接将如下所示(这是一个演示链接): https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=5min&apikey=demo&datatype=csv
我对httpget的试用给出了此错误:
|domain error: httpget
log ;:^:_1 host;(":port);path
如何使用J获得在线csv并将其传递给我的代码?谢谢。
编辑:这是我的平台
Engine: j901/j64/linux
Beta-c: commercial/2019-04-03T10:18:09
Library: 9.01.03
Qt IDE: 1.8.1/5.5.1
Platform: Linux 64
Installer: J901 install
InstallPath: /home/sam/j901
答案 0 :(得分:2)
使用上面提供的链接,以下内容在Windows 10上对我有效:
load 'web/gethttp csv'
Link=: 'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=5min&apikey=demo&datatype=csv'
fixcsv gethttp Link
┌───────────────────┬────────┬────────┬────────┬────────┬────────┐
│timestamp │open │high │low │close │volume │
├───────────────────┼────────┼────────┼────────┼────────┼────────┤
│2019-04-18 16:00:00│123.3900│123.5000│123.3000│123.3700│1327949 │
├───────────────────┼────────┼────────┼────────┼────────┼────────┤
│2019-04-18 15:55:00│123.4100│123.4800│123.3000│123.3900│931359 │
├───────────────────┼────────┼────────┼────────┼────────┼────────┤
│2019-04-18 15:50:00│123.3250│123.4200│123.2900│123.4100│340777 │
└───────────────────┴────────┴────────┴────────┴────────┴────────┘
...
JVERSION
Engine: j807/j64/windows
Release-d: commercial/2019-03-18T13:21:35
Library: 8.07.25
Qt IDE: 1.7.9s/5.9.6
Platform: Win 64
Installer: J807 install
InstallPath: c:/program files/j64-807
Contact: www.jsoftware.com
对于Linux来说,似乎似乎需要附加双引号来使链接由curl
或wget
正确解释:
fixcsv gethttp dquote Link
┌───────────────────┬────────┬────────┬────────┬────────┬────────┐
│timestamp │open │high │low │close │volume │
├───────────────────┼────────┼────────┼────────┼────────┼────────┤
│2019-04-18 16:00:00│123.3900│123.5000│123.3000│123.3700│1327949 │
├───────────────────┼────────┼────────┼────────┼────────┼────────┤
...
双引号在Windows上也可以正常使用,因此潜在地,您可以对链接进行双引号,并且它应该可以跨平台使用。