dataset.assign_attrs() 例子?
dataset.assign_attrs() example?
我今天才开始使用 xarray,到目前为止,它的易用性给我留下了深刻的印象。我确实有一个关于数据集的 assign_attrs() 函数的问题。
我有一个从 pandas 数据框创建的数据集。我试图在它创建后为其分配元数据属性,但是当我在 运行 之后查看 ds.attrs 或 ds.attrs.items() 时,我似乎没有得到任何东西脚本。
我正在向它传递一本字典,但也许我做得不对?我尝试了多种传递 dict 的方法,但似乎没有任何效果。任何帮助或示例将不胜感激。示例代码和输出如下:
输入:
df = pd.read_csv(readstr)
md = pr.plot_results.get_metadata(fp)
refdata = {'refLat': md['refLat'],
'refLon': md['refLon'],
'refAlt': md['refAlt'],
'fw': md['FWversion']}
for k,v in refdata.items():
print(k, v, "refdata kv")
ds = xr.Dataset.from_dataframe(df)
ds.assign_attrs(refdata)
print(ds.attrs, 'attributes')
print(ds.attrs.items(), 'items')
print(ds.attrs['refLon'])
输出:
python_gnss_plot git:master ❯ ./start_plots.py
✹ ✭
refLat 37.77101988 refdata kv
refLon -122.40315123 refdata kv
refAlt -5.6120 refdata kv
fw v140-develop-2018060121-7 refdata kv
OrderedDict() attributes
odict_items([]) items
Exception in Tkinter callback
Traceback (most recent call last):
Fil
"/Library/Frameworks/Python.framework/Versions/3.6/
lib/python3.6/tkinter/__init__.py",
line 1699, in __call__
return self.func(*args)
File "./start_plots.py", line 109, in execute_calc
print(ds.attrs['refLon'])
KeyError: 'refLon'
assign_attrs
returns 具有给定属性的 new xarray.Dataset
。它旨在促进对不改变现有对象的 xarray 对象的链式操作。
如果你想就地更新数据集的属性,直接分配给ds.attrs
,或者使用ds.attrs.update()
,例如
ds.attrs = refdata
我今天才开始使用 xarray,到目前为止,它的易用性给我留下了深刻的印象。我确实有一个关于数据集的 assign_attrs() 函数的问题。
我有一个从 pandas 数据框创建的数据集。我试图在它创建后为其分配元数据属性,但是当我在 运行 之后查看 ds.attrs 或 ds.attrs.items() 时,我似乎没有得到任何东西脚本。
我正在向它传递一本字典,但也许我做得不对?我尝试了多种传递 dict 的方法,但似乎没有任何效果。任何帮助或示例将不胜感激。示例代码和输出如下:
输入:
df = pd.read_csv(readstr)
md = pr.plot_results.get_metadata(fp)
refdata = {'refLat': md['refLat'],
'refLon': md['refLon'],
'refAlt': md['refAlt'],
'fw': md['FWversion']}
for k,v in refdata.items():
print(k, v, "refdata kv")
ds = xr.Dataset.from_dataframe(df)
ds.assign_attrs(refdata)
print(ds.attrs, 'attributes')
print(ds.attrs.items(), 'items')
print(ds.attrs['refLon'])
输出:
python_gnss_plot git:master ❯ ./start_plots.py
✹ ✭
refLat 37.77101988 refdata kv
refLon -122.40315123 refdata kv
refAlt -5.6120 refdata kv
fw v140-develop-2018060121-7 refdata kv
OrderedDict() attributes
odict_items([]) items
Exception in Tkinter callback
Traceback (most recent call last):
Fil
"/Library/Frameworks/Python.framework/Versions/3.6/
lib/python3.6/tkinter/__init__.py",
line 1699, in __call__
return self.func(*args)
File "./start_plots.py", line 109, in execute_calc
print(ds.attrs['refLon'])
KeyError: 'refLon'
assign_attrs
returns 具有给定属性的 new xarray.Dataset
。它旨在促进对不改变现有对象的 xarray 对象的链式操作。
如果你想就地更新数据集的属性,直接分配给ds.attrs
,或者使用ds.attrs.update()
,例如
ds.attrs = refdata