• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python conventions.decode_cf函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中xarray.conventions.decode_cf函数的典型用法代码示例。如果您正苦于以下问题:Python decode_cf函数的具体用法?Python decode_cf怎么用?Python decode_cf使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了decode_cf函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_dataset_repr_with_netcdf4_datetimes

    def test_dataset_repr_with_netcdf4_datetimes(self):
        # regression test for #347
        attrs = {'units': 'days since 0001-01-01', 'calendar': 'noleap'}
        with warnings.catch_warnings():
            warnings.filterwarnings('ignore', 'unable to decode time')
            ds = decode_cf(Dataset({'time': ('time', [0, 1], attrs)}))
            assert '(time) object' in repr(ds)

        attrs = {'units': 'days since 1900-01-01'}
        ds = decode_cf(Dataset({'time': ('time', [0, 1], attrs)}))
        assert '(time) datetime64[ns]' in repr(ds)
开发者ID:benbovy,项目名称:xarray,代码行数:11,代码来源:test_conventions.py


示例2: test_decode_cf_with_dask

 def test_decode_cf_with_dask(self):
     import dask.array as da
     original = Dataset({
         't': ('t', [0, 1, 2], {'units': 'days since 2000-01-01'}),
         'foo': ('t', [0, 0, 0], {'coordinates': 'y', 'units': 'bar'}),
         'bar': ('string2', [b'a', b'b']),
         'baz': (('x'), [b'abc'], {'_Encoding': 'utf-8'}),
         'y': ('t', [5, 10, -999], {'_FillValue': -999})
     }).chunk()
     decoded = conventions.decode_cf(original)
     print(decoded)
     assert all(isinstance(var.data, da.Array)
                for name, var in decoded.variables.items()
                if name not in decoded.indexes)
     assert_identical(decoded, conventions.decode_cf(original).compute())
开发者ID:benbovy,项目名称:xarray,代码行数:15,代码来源:test_conventions.py


示例3: test_multidimensional_coordinates

 def test_multidimensional_coordinates(self):
     # regression test for GH1763
     # Set up test case with coordinates that have overlapping (but not
     # identical) dimensions.
     zeros1 = np.zeros((1, 5, 3))
     zeros2 = np.zeros((1, 6, 3))
     zeros3 = np.zeros((1, 5, 4))
     orig = Dataset({
         'lon1': (['x1', 'y1'], zeros1.squeeze(0), {}),
         'lon2': (['x2', 'y1'], zeros2.squeeze(0), {}),
         'lon3': (['x1', 'y2'], zeros3.squeeze(0), {}),
         'lat1': (['x1', 'y1'], zeros1.squeeze(0), {}),
         'lat2': (['x2', 'y1'], zeros2.squeeze(0), {}),
         'lat3': (['x1', 'y2'], zeros3.squeeze(0), {}),
         'foo1': (['time', 'x1', 'y1'], zeros1,
                  {'coordinates': 'lon1 lat1'}),
         'foo2': (['time', 'x2', 'y1'], zeros2,
                  {'coordinates': 'lon2 lat2'}),
         'foo3': (['time', 'x1', 'y2'], zeros3,
                  {'coordinates': 'lon3 lat3'}),
         'time': ('time', [0.], {'units': 'hours since 2017-01-01'}),
     })
     orig = conventions.decode_cf(orig)
     # Encode the coordinates, as they would be in a netCDF output file.
     enc, attrs = conventions.encode_dataset_coordinates(orig)
     # Make sure we have the right coordinates for each variable.
     foo1_coords = enc['foo1'].attrs.get('coordinates', '')
     foo2_coords = enc['foo2'].attrs.get('coordinates', '')
     foo3_coords = enc['foo3'].attrs.get('coordinates', '')
     assert set(foo1_coords.split()) == set(['lat1', 'lon1'])
     assert set(foo2_coords.split()) == set(['lat2', 'lon2'])
     assert set(foo3_coords.split()) == set(['lat3', 'lon3'])
     # Should not have any global coordinates.
     assert 'coordinates' not in attrs
开发者ID:benbovy,项目名称:xarray,代码行数:34,代码来源:test_conventions.py


示例4: test_decode_cf_with_drop_variables

 def test_decode_cf_with_drop_variables(self):
     original = Dataset({
         't': ('t', [0, 1, 2], {'units': 'days since 2000-01-01'}),
         'x': ("x", [9, 8, 7], {'units': 'km'}),
         'foo': (('t', 'x'), [[0, 0, 0], [1, 1, 1], [2, 2, 2]], {'units': 'bar'}),
         'y': ('t', [5, 10, -999], {'_FillValue': -999})
     })
     expected = Dataset({
         't': pd.date_range('2000-01-01', periods=3),
         'foo': (('t', 'x'), [[0, 0, 0], [1, 1, 1], [2, 2, 2]], {'units': 'bar'}),
         'y': ('t', [5, 10, np.nan])
     })
     actual = conventions.decode_cf(original, drop_variables=("x",))
     actual2 = conventions.decode_cf(original, drop_variables="x")
     self.assertDatasetIdentical(expected, actual)
     self.assertDatasetIdentical(expected, actual2)
开发者ID:jhamman,项目名称:xarray,代码行数:16,代码来源:test_conventions.py


示例5: test_dataset_repr_with_netcdf4_datetimes

    def test_dataset_repr_with_netcdf4_datetimes(self):
        # regression test for #347
        attrs = {'units': 'days since 0001-01-01', 'calendar': 'noleap'}
        with warnings.catch_warnings():
            warnings.filterwarnings('ignore', 'unable to decode time')
            ds = decode_cf(Dataset({'time': ('time', [0, 1], attrs)}))
            self.assertIn('(time) object', repr(ds))

        attrs = {'units': 'days since 1900-01-01'}
        ds = decode_cf(Dataset({'time': ('time', [0, 1], attrs)}))
        self.assertIn('(time) datetime64[ns]', repr(ds))

        # this should not throw a warning (GH1111)
        with warnings.catch_warnings():
            warnings.filterwarnings('error')
            conventions.DecodedCFDatetimeArray(np.asarray([722624]),
                                               "days since 0001-01-01")
开发者ID:jhamman,项目名称:xarray,代码行数:17,代码来源:test_conventions.py


示例6: test_dataset

 def test_dataset(self):
     original = Dataset({
         't': ('t', [0, 1, 2], {'units': 'days since 2000-01-01'}),
         'foo': ('t', [0, 0, 0], {'coordinates': 'y', 'units': 'bar'}),
         'y': ('t', [5, 10, -999], {'_FillValue': -999})
     })
     expected = Dataset({'foo': ('t', [0, 0, 0], {'units': 'bar'})},
                        {'t': pd.date_range('2000-01-01', periods=3),
                         'y': ('t', [5.0, 10.0, np.nan])})
     actual = conventions.decode_cf(original)
     assert_identical(expected, actual)
开发者ID:benbovy,项目名称:xarray,代码行数:11,代码来源:test_conventions.py


示例7: test_decode_cf_datetime_transition_to_invalid

    def test_decode_cf_datetime_transition_to_invalid(self):
        # manually create dataset with not-decoded date
        from datetime import datetime
        ds = Dataset(coords={'time' : [0, 266 * 365]})
        units = 'days since 2000-01-01 00:00:00'
        ds.time.attrs = dict(units=units)
        ds_decoded = conventions.decode_cf(ds)

        expected = [datetime(2000, 1, 1, 0, 0),
                    datetime(2265, 10, 28, 0, 0)]

        self.assertArrayEqual(ds_decoded.time.values, expected)
开发者ID:jhamman,项目名称:xarray,代码行数:12,代码来源:test_conventions.py


示例8: test_decode_cf_datetime_transition_to_invalid

    def test_decode_cf_datetime_transition_to_invalid(self):
        # manually create dataset with not-decoded date
        from datetime import datetime
        ds = Dataset(coords={'time': [0, 266 * 365]})
        units = 'days since 2000-01-01 00:00:00'
        ds.time.attrs = dict(units=units)
        with warnings.catch_warnings():
            warnings.filterwarnings('ignore', 'unable to decode time')
            ds_decoded = conventions.decode_cf(ds)

        expected = [datetime(2000, 1, 1, 0, 0),
                    datetime(2265, 10, 28, 0, 0)]

        assert_array_equal(ds_decoded.time.values, expected)
开发者ID:benbovy,项目名称:xarray,代码行数:14,代码来源:test_conventions.py


示例9: test_invalid_time_units_raises_eagerly

 def test_invalid_time_units_raises_eagerly(self):
     ds = Dataset({'time': ('time', [0, 1], {'units': 'foobar since 123'})})
     with raises_regex(ValueError, 'unable to decode time'):
         decode_cf(ds)
开发者ID:benbovy,项目名称:xarray,代码行数:4,代码来源:test_conventions.py


示例10: test_decode_coordinates

 def test_decode_coordinates(self):
     # regression test for GH610
     original = Dataset({'foo': ('t', [1, 2], {'coordinates': 'x'}),
                         'x': ('t', [4, 5])})
     actual = conventions.decode_cf(original)
     assert actual.foo.encoding['coordinates'] == 'x'
开发者ID:benbovy,项目名称:xarray,代码行数:6,代码来源:test_conventions.py


示例11: test_invalid_coordinates

 def test_invalid_coordinates(self):
     # regression test for GH308
     original = Dataset({'foo': ('t', [1, 2], {'coordinates': 'invalid'})})
     actual = conventions.decode_cf(original)
     assert_identical(original, actual)
开发者ID:benbovy,项目名称:xarray,代码行数:5,代码来源:test_conventions.py



注:本文中的xarray.conventions.decode_cf函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python computation.apply_ufunc函数代码示例发布时间:2022-05-26
下一篇:
Python xarray.Variable类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap