首页 > 解决方案 > AttributeError:“str”对象没有属性“_normalize_dim_order”xarray ufunc

问题描述

我有一个名为ts_process(). 我将它传递给apply_ufunc。ts_process 函数接受 4 个位置参数,其中前三个是字符串,最后一个是 xarray 对象。我正在使用字典将此函数及其参数传递给 ufunc 函数。

mydict = {'red' : 'foo', 'doy' : 'doy' ,'boo': 'data_var','data' : sample_data}
xr.apply_ufunc(
    ts_process,
    *mydict,
    input_core_dims=None,
    vectorize=True
)

当我调用 ufunc 函数时,它会将数据关键字作为字符串传递给 ts_process。这是 ts_process 的一部分

def ts_process(red,doy,boo,data)
    df = xr.Dataset.to_dataframe(midas_data)
    df = modis_df.rename(columns={red: "red", doy: "doy","data_var" : data_var})
    return df

它给出错误“AttributeError:'str'对象没有属性'_normalize_dim_order'”所以数据参数应该被视为一个对象而不是字符串。任何帮助是极大的赞赏

标签: pythonpython-xarray

解决方案


推荐阅读