有没有一种方法可以使用文件对象(二进制流)或者通过netCDF4数据集对象创建(打开/加载)虹膜多维数据集?
具体来说,我有一个通过URL提供的文件,但不是由OpenDAP服务器提供的;iris.load_cube()和朋友对此失败。
我意识到Iris更喜欢延迟加载,因此使用URI而不是内存数据,但这并不总是可行的。
对于普通的netCDF4 Dataset对象,我可以执行以下操作:
from urllib.request import urlopen
import netCDF4 as nc
url = 'https://crudata.uea.ac.uk/cru/data/temperature/HadCRUT.4.6.0.0.median.nc'
with urlopen(url) as stream:
ds = nc.Dataset('HadCRUT', memory=stream.read())
Run Code Online (Sandbox Code Playgroud)
因此,我正在寻找对Iris进行类似操作的方法Cube,或者将netCDF4数据集读入多维数据集,而无需通过磁盘上的临时文件。我曾希望Iris功能中可以存在一些东西,但是我(尚未)无法在参考文档中找到它。
我正在使用 statsmodel 中的 OLS,链接是https://www.statsmodels.org/stable/examples/notebooks/generated/ols.html
#USD
X = sm.add_constant(USD)
model = sm.OLS(y, X)
results = model.fit()
print(results.summary())
OLS Regression Results
========================================================================================
Dep. Variable: All Ordinaries closing price R-squared: 0.265
Model: OLS Adj. R-squared: 0.265
Method: Least Squares F-statistic: 352.4
Date: Tue, 23 Oct 2018 Prob (F-statistic): 2.35e-67
Time: 17:30:24 Log-Likelihood: -8018.8
No. Observations: 977 AIC: 1.604e+04
Df Residuals: 975 BIC: 1.605e+04
Df Model: 1
Covariance Type: nonrobust
==============================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------
const 1843.1414 149.675 12.314 …Run Code Online (Sandbox Code Playgroud) 我可以使用下面的代码检索和设置 WMSLayer,但我想将一些额外的选项传递给服务器(特别是使用 logscale 并设置 colorscale 范围)。该WMSLayer构造函数采用options参数,但这个要求是(Unicode)的字符串列表,我不能够设置相应的参数值。
也就是说,我可以通过options=['logscale'](如下所示),但尝试将其设置为 True 或 False(或“true”或“false”)失败,尝试使用诸如options=['logscale', 'true']或 之类的变体options=['logscale=true']。
检查发送到服务器的参数(JS 控制台将显示错误)显示使用了“logscale”,但始终设置为未定义。也就是说,像,https://some-server.domain.tld/thredds/wms/somefile.nc?service=WMS&request=...&logscale=undefined&...。
如何在 WMSLayer 构造函数中传递额外选项的值?
确实有办法从 ipyleaflet 到底层的 Leaflet.js 获得额外的选项和它们的值吗?
import ipyleaflet
from owslib.wms import WebMapService
wms_url = "https://some-server.domain.tld/thredds/wms/somefile.nc"
wms_layers = list(WebMapService(wms_url).contents.keys())
wms = ipyleaflet.WMSLayer(url=wms_url, layers=wms_layers[0], transparent=True,
format='image/png', opacity=0.33, options=['logscale'])
m = ipyleaflet.Map(zoom=3)
m.add_layer(wms)
# fetch map and display in Jupyter cell
m
Run Code Online (Sandbox Code Playgroud) 在 Windows 10 下,我收到
\n\n/usr/bin/env: \xe2\x80\x98python3\xe2\x80\x99: No such file or directory\nRun Code Online (Sandbox Code Playgroud)\n\n在 gitbash 中,当尝试执行例如 bpmake 命令时。
\n\nPython 添加到 PATH(版本 3.8)
\n\n配置中遗漏了什么?
\n我有一个 python 脚本,我需要通过pyinstaller. 成功创建了exe,但运行时显示上述错误。
我已经在网上搜索并尝试了许多解决方案,但没有一个有效。# -*- coding:utf-8 -*-在脚本的第一行尝试使用但失败了。
使用Python3.7,PyInstaller3.5
谁能帮我这个?
python ×4
git-bash ×1
jupyter ×1
leaflet ×1
pyinstaller ×1
python-3.x ×1
python-iris ×1
statsmodels ×1
windows-10 ×1
wms ×1