我有一个数据数组,其中包含了全球各地lat、lon点数的值列表。我想为特定的城市提供一个lat,lon值的列表,并应用在那些lat,lon点上的值来创建一个数据。为了实现这一点,我执行下面的代码。
df1=pd.read_csv('E:/Riskpulse_HD/TroPYcal/GenscapePortList.csv')
lats=df1['Latitude']
lons=df1['Longitude']
count_city=[]
for idx,(lon,lat) in enumerate(zip(lons,lats)):
v
有没有一种在DataArray.rolling窗口上计算分位数的xArray方法?列出的可用方法包括mean或median,但不包括分位数/百分位数。我想知道,即使没有直接的方法,也能以某种方式做到这一点。 目前,我正在将xArray数据本地迁移到pandas.DataFrame,在那里我将应用rolling().quantile()序列。在此之后,我将获取新DataFrame的值并从中构建一个xArray.DataArray。可重现的代码: import xarray as xr
import pandas as pd
import numpy as np
times = np.aran
我有一个netCDF文件,其中的time维度包含2年内按小时计算的数据。我想要取平均值,以获得每个月每天每小时的每小时平均值。我试过这个:
import xarray as xr
ds = xr.open_mfdataset('ecmwf_usa_2015.nc')
ds.groupby(['time.month', 'time.hour']).mean('time')
但是我得到了这个错误:
*** TypeError: `group` must be an xarray.DataArray or the name of
这个问题很简单,但我在网上找不到答案。我有一个Dataset,我只想给它添加一个命名的DataArray。就像dataset.add({"new_array": new_data_array})一样。我知道merge、update和concatenate,但我的理解是merge用于合并两个或更多的Dataset,concatenate用于连接两个或更多的DataArray以形成另一个DataArray,而我还没有完全理解update。我已经尝试过dataset.update({"new_array": new_data_array}),但是我得到了以下错误。
I
我使用 DataArray对象进行布尔索引。它可以工作…有时候。在下面的示例中,它适用于大型数组,但不适用于小型数组:
In [12]: x = xarray.DataArray(numpy.arange(336*49).reshape(336,49))
In [13]: x.values[x==-1]
Out[13]: array([], dtype=int64)
In [14]: x = xarray.DataArray(numpy.arange(20*10).reshape(20, 10))
In [15]: x.values[x==-1]
--------------------
我有一个Xarray DataArray,它的值位于矩形2D网格上,还有一个点列表(坐标值对),它来自包含在熊猫Dataframe中的网格的任意子集。
如何屏蔽网格坐标未出现在列表点的DataArray中的值(即设置为DataArray)?
例如,考虑DataArray
In [35]: da = xr.DataArray(data=np.random.randint(10, size=(5, 6)), coords={"x": np.linspace(0, 10, 5), "y": np.linspace(0, 12, 6)})
In [36]: da
Ou
在MATLAB中,我将许多不同的向量绘制成一个图形。现在,我想做的只是简单地撤销我绘制到那个数字的最后一个向量,而没有清除所有其他的东西。如何才能做到这一点?能做到吗?
谢谢
编辑:
figure(1); clf(1);
N = 100;
x = randn(1,N);
y = randn(1,N);
z = sin(1:N);
plot(x); hold on;
plot(y,'r');
plot(z,'k');
在这里,我想移除z,这是我做的最后一个图。
我只是不理解xarray中的这种行为,我可能只是不理解广播xarray所做的。我做了一个人为的例子来说明这个问题。
import numpy as np
import xarray as xr
# These are coordinates
years = xr.DataArray(np.arange(2018, 2021), dims="year")
ids = xr.DataArray(np.arange(1, 4), dims="id")
# These are data with different coordinates
year_data = x
我正在尝试从arduino获取数据,然后尝试使用subplot在python中实时显示数据。来自arduino uno板的值很快,在python控制台中也以相同的速率显示,但当我试图在图形中绘制实时数据时,绘制速度非常慢。它需要与来自uno板的值的速率一样快。请帮帮忙。下面是我的代码:
import serial
import numpy
import matplotlib.pyplot as plt
from drawnow import *
x = []
y = []
z = []
magnitude = []
arduinoData = serial.Serial('com4