8
\ begingroup美元

我想知道当前的递减率对于一个给定的点。换句话说,我想要“活”在不同海拔温度数据。生活是灵活的,我一般好与预测是有效的当前时间点。我在哪里可以得到这些数据,最好的格式很容易摄取到Python吗?

更多的细节:

我正在使用一个失效速率常数来估计温度在不同的海拔,但想用更复杂的东西。我是一名飞行员,所以我最初想到使用临时工和高空风产品,然后插值零星的站点之间,但后来我发现了在美国国家海洋和大气管理局的网站模型。但是:

  1. 我不清楚哪一个是最适合我的用例。Op40似乎是一个不错的违约。但是,HRRR模型似乎更好,特别是由于更高的分辨率。

  2. 我不确定,我可以使用原始数据的格式。如果,例如,我创建了一个交互式斜Op40用NOAA的网站,然后点击得到文本按钮,让我感兴趣的信息的类型:

在这里输入图像描述

但是如果我选择ASCII文本在第一页我得到一个GSD文件这似乎并不遵循美国国家海洋和大气管理局的文件格式。它看起来像HRRR进来grib2格式,也似乎没有那么简单纬度/经度,海拔,温度。似乎这些文件提供更原始,那么需要模拟对临时工?我发现一些python库,但可以用一个指针在我需要的方法。

\ endgroup美元

    2答案2

    3
    \ begingroup美元

    GSD文件只是一个文本文件(ASCII),你可以阅读几乎任何你想要的。因为你是使用python我建议看熊猫,特别是pandas.read_csv功能。

    我现在使用这个URL作为一个例子:https://rucsoundings.noaa.gov/get_soundings.cgi?data_source=op40&latest=latest&start_year=2019&start_month_name=dec&start_mday=3&start_hour=7&start_min=0&n_hrs=1.0&fcst_len=shortest&airport=50%2c - 90 &text=ascii%20text%20%28gsd%20format%29&hydrometeors=false&start=latest

    ruc试探你指的。这里我只是进入lat = 50,朗= -90挑选东西。你看到这个URL中的“机场=”。你可以下载你所需要的数据与wget或卷曲,放到一个文件和一个更好的名字(sounding.txt)是这样的:

    wget - o sounding.txt“https://rucsoundings.noaa.gov/get_soundings.cgi?data_source=op40&latest=latest&start_year=2019&start_month_name=dec&start_mday=3&start_hour=7&start_min=0&n_hrs=1.0&fcst_len=shortest&airport=50%2c - 90 &text=ascii%20text%20%28gsd%20format%29&hydrometeors=false&start=latest”

    然后你可以写一个小python程序获取需要的数据,和熊猫读取数据。

    我也要注意,如果要使用grib2你就可以轻松地更改模型由于grib2数值天气预报数据的标准格式。这将是一个更复杂,因为它是一个更加棘手的阅读。grib2是二进制格式存储大型数据集,很好。我指的是eccodes从ECMWF如果你想看起来更。

    \ endgroup美元
    2
    • 1
      \ begingroup美元 谢谢。我应该更清楚。我的问题不在于读数据,但解释它。首先,德牧定义说,前4行测深的识别和信息行”,然而,4号线你发布的文件显然似乎第一行的数据,所以我想知道我在看正确的事情。一般来说,虽然,我不知道如何得到(温度、海拔)CSV。没有临时标题。建议临时定义是在第4列,但这些值范围< -500,所以这可能不是临时? \ endgroup美元
      - - - - - -詹姆斯年代
      2019年12月3日17:16
    • \ begingroup美元 我明白了,我误解了。我迅速透过javascript源代码,但不能找到一种方法来直接获取原始数据。或者,您可以考虑从其他来源获取数据。两种选择可以是:普利茅斯大学使数值天气预报数据,怀俄明大学使真正的观察。 \ endgroup美元
      - - - - - -呼呼声
      2019年12月3日21:50
    0
    \ begingroup美元

    从我所看到的,因为某些原因德牧有‘t / td列分割成两个独立的列,并且温度乘以10。为什么?也许去掉小数点……所以当你看到一个值< -500 < -50°C。

    对比德牧和“文本”

    其他变化:
    ——压力和高度被调包。
    ——压力也被乘以10,所以这不是在毫巴但decapascals…
    ——高度已经从脚转换(得到文本的版本)米(德牧)。

    总而言之,这是推断德牧的列标题:
    (daPa) | 3 | 2压力高度(m) | 4 t (d°C = decidegree摄氏)| 5 td (d°C) |

    我不知道该怎么做的“99999”温度线出现在德牧……

    希望你能做一些的!

    \ endgroup美元
    4
    • 1
      \ begingroup美元 有趣!我没有试图“解码”德牧,匹配值。明天我将深入挖掘这一点,但我觉得你有它。就其价值而言:是的,乘以10可能是删除小数点——这是一个更少的字符发送/存储和是否byte-compressed然后使用这些数据int年代而不是漂浮阻止了很多问题:belighted.com/blog/float-is-evil \ endgroup美元
      - - - - - -詹姆斯年代
      2019年12月10日在44
    • \ begingroup美元 是的,我想是有意义和整数编码的数据,即使这意味着处理常见单位前缀……让我们知道如果你设法进一步破解文件! \ endgroup美元
      - - - - - -让-玛丽•Prival
      2019年12月10日在八34
    • \ begingroup美元 @JamesS,更新吗? \ endgroup美元
      - - - - - -让-玛丽•Prival
      2019年12月16日,在车
    • 1
      \ begingroup美元 对不起。我心烦意乱。这是你发现。我也意识到2号线的有效日期,和4号线包括网格点的纬度/液化天然气。列6和7是万得资讯。我整理一些代码来解码:gist.github.com/jamesshannon/eae1bb995a906dcb1ba2ca8172a7c53e \ endgroup美元
      - - - - - -詹姆斯年代
      2019年12月21日16:43

    你的答案

    通过点击“发布你的答案”,你同意我们服务条款并承认您已阅读并理解我们的隐私政策的行为准则

    不是你要找的答案?浏览其他问题标记问你自己的问题