Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建一个xarray.DataArray,其中所有值都满足一个条件_Python_Python Xarray - Fatal编程技术网

Python 创建一个xarray.DataArray,其中所有值都满足一个条件

Python 创建一个xarray.DataArray,其中所有值都满足一个条件,python,python-xarray,Python,Python Xarray,我有一个一维的DataArray,每个值对应一个ID。 我正在尝试以相同的格式创建一个新数组,其中包含值和ID,用于任何值超出限制的情况 我尝试过使用xr.DataArray.where(condition,other),但在不满足条件的情况下,这会生成与“nan”大小相同的数组 #create mock array ID = np.arange(10) values = np.random.uniform(0.5, 20, 10) xr.DataArray(values, dims='ID',

我有一个一维的DataArray,每个值对应一个ID。 我正在尝试以相同的格式创建一个新数组,其中包含值和ID,用于任何值超出限制的情况

我尝试过使用
xr.DataArray.where(condition,other)
,但在不满足条件的情况下,这会生成与“nan”大小相同的数组

#create mock array
ID = np.arange(10)
values = np.random.uniform(0.5, 20, 10)
xr.DataArray(values, dims='ID', coords={'ID':ID})

xlim = 10

一个示例输出可以是一个包含5个元素(所有元素的值都大于10,这是我们设置的限制)的数组,以及它们与原始数组对应的ID。

您可以直接使用numpty索引

#create mock array
ID = np.arange(10)
values = np.random.uniform(0.5, 20, 10)
arr = xr.DataArray(values, dims='ID', coords={'ID':ID})

xlim = 10

arr[np.where(arr>xlim)]

<xarray.DataArray (ID: 4)> array([18.830967, 14.651416, 17.545492,
17.627902]) Coordinates:   * ID       (ID) int64 2 7 8 9
#创建模拟数组
ID=np.arange(10)
数值=np.随机均匀(0.5,20,10)
arr=xr.DataArray(值,dims='ID',coords='ID':ID})
xlim=10
arr[np.其中(arr>xlim)]
数组([18.830967,14.651416,17.545492,
17.627902])坐标:*ID(ID)int64 2 7 8 9

您可以直接使用numpty索引

#create mock array
ID = np.arange(10)
values = np.random.uniform(0.5, 20, 10)
arr = xr.DataArray(values, dims='ID', coords={'ID':ID})

xlim = 10

arr[np.where(arr>xlim)]

<xarray.DataArray (ID: 4)> array([18.830967, 14.651416, 17.545492,
17.627902]) Coordinates:   * ID       (ID) int64 2 7 8 9
#创建模拟数组
ID=np.arange(10)
数值=np.随机均匀(0.5,20,10)
arr=xr.DataArray(值,dims='ID',coords='ID':ID})
xlim=10
arr[np.其中(arr>xlim)]
数组([18.830967,14.651416,17.545492,
17.627902])坐标:*ID(ID)int64 2 7 8 9