【问题标题】:Read data into Matlab using URL使用 URL 将数据读入 Matlab
【发布时间】:2010-09-27 19:23:36
【问题描述】:

我想将 Weather Unground 中的天气数据直接读取到 Matlab 中。对于给定的站点,您可以选择以逗号分隔格式输出数据。如何编写一个将信息读入 Matlab 的 Matlab 函数?我不想下载该文件,而是从 URL 中读取它。

例如,这里是一些数据的URL。是否有一些 Matlab 函数将 URL 作为输入并保存从那里找到的任何数据?

【问题讨论】:

    标签: url matlab


    【解决方案1】:

    函数URLREAD 是您正在寻找的。例如,使用上面的 URL 会产生以下输出:

    >> str = urlread('http://www.wunderground.com/weatherstation/WXDailyHistory.asp?ID=MC9780&format=1');
    
    str =
    
    
    Time,TemperatureF,DewpointF,PressureIn,WindDirection,WindDirectionDegrees,WindSpeedMPH,WindSpeedGustMPH,Humidity,HourlyPrecipIn,Conditions,Clouds,dailyrainin,SoftwareType<br>
    2010-09-27 00:09:00,56.0,52.0,30.05,NNE,25,0.0,3.0,86,0.00,,,0.00,,
    <br>
    2010-09-27 00:17:00,56.0,52.0,30.05,NNE,25,0.0,3.0,86,0.00,,,0.00,,
    <br>
    2010-09-27 00:28:00,56.0,52.0,30.04,NNE,30,2.0,5.0,85,0.00,,,0.00,,
    <br>
    ...
    

    现在你只需要解析字符串输出就可以得到你想要的信息了。

    如果您希望从 URL 中读取并将其保存到文件而不是将其作为字符串变量加载,则可以使用函数 URLWRITE

    【讨论】:

    • Matlab可以处理CDF解析:mathworks.com/help/techdoc/ref/netcdf.html
    • @rwong,请详细说明一下?我以前从未听说过 netcdf
    • +1:答案正确。但是在 Mathworks 部分,函数名称的选择真是太糟糕了!
    • @Oli Charlesworth:我假设您指的是 URLWRITE,我不得不同意。通常,名称中包含“read”和“write”的函数会被期望执行互补的操作,例如读取 from 文件和写入 to 文件。由于 URLWRITE 实际上读取 then 写入,我认为他们应该将其重命名为 URLSAVE 之类的名称。事实上,我想我现在就去文档页面提出建议! ;)
    • @gnoivce,我同意 URLSAVE 更好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 2018-04-12
    • 1970-01-01
    相关资源
    最近更新 更多