Xarray Datasets from House Tables.
xarray-ms的Python项目详细描述
通过python-casacore从casa表构造xarrayDatasets。
Dataset中包含的DataArrays是dask数组,由
对pyrap.tables.table.getcol
的延迟调用。
支持将DataArrays写入表中的相应列。
这个包的目的是支持测量集 用于编写并行、分布式数据的数据源和接收器 射电天文学算法。
importdask.arrayasdafromxarraymsimportxds_from_table,xds_to_table# Create xarray dataset from Measurement Set "WSRT.MS"ds=xds_from_table("WSRT.MS")# Set the flag DataArray to it's inverseds['flag']=(ds.flag.dims,da.logical_not(ds.flag))# Write the flag column back to the Measurement Setxds_to_table(ds,"WSRT.MS","FLAG").compute()printds<xarray.Dataset>Dimensions:((u,v,w):3,chan:64,corr:4,row:6552,table_row:6552)Coordinates:*row(row)int3201234567891011121314151617...*table_row(table_row)int320123456789101112131415...Dimensionswithoutcoordinates:(u,v,w),chan,corrDatavariables:ANTENNA1(row)int32dask.array<shape=(6552,),chunksize=(1000,)>ANTENNA2(row)int32dask.array<shape=(6552,),chunksize=(1000,)>ARRAY_ID(row)int32dask.array<shape=(6552,),chunksize=(1000,)>CORRECTED_DATA(row,chan,corr)complex64dask.array<shape=(6552,64,4),chunksize=(1000,64,4)>DATA(row,chan,corr)complex64dask.array<shape=(6552,64,4),chunksize=(1000,64,4)>EXPOSURE(row)float64dask.array<shape=(6552,),chunksize=(1000,)>FEED1(row)int32dask.array<shape=(6552,),chunksize=(1000,)>FEED2(row)int32dask.array<shape=(6552,),chunksize=(1000,)>FLAG(row,chan,corr)booldask.array<shape=(6552,64,4),chunksize=(1000,64,4)>FLAG_ROW(row)booldask.array<shape=(6552,),chunksize=(1000,)>IMAGING_WEIGHT(row,chan)float32dask.array<shape=(6552,64),chunksize=(1000,64)>INTERVAL(row)float64dask.array<shape=(6552,),chunksize=(1000,)>MODEL_DATA(row,chan,corr)complex64dask.array<shape=(6552,64,4),chunksize=(1000,64,4)>OBSERVATION_ID(row)int32dask.array<shape=(6552,),chunksize=(1000,)>PROCESSOR_ID(row)int32dask.array<shape=(6552,),chunksize=(1000,)>SCAN_NUMBER(row)int32dask.array<shape=(6552,),chunksize=(1000,)>SIGMA(row,corr)float32dask.array<shape=(6552,4),chunksize=(1000,4)>STATE_ID(row)int32dask.array<shape=(6552,),chunksize=(1000,)>TIME(row)float64dask.array<shape=(6552,),chunksize=(1000,)>TIME_CENTROID(row)float64dask.array<shape=(6552,),chunksize=(1000,)>UVW(row,(u,v,w))float64dask.array<shape=(6552,3),chunksize=(1000,3)>WEIGHT(row,corr)float32dask.array<shape=(6552,4),chunksize=(1000,4)>Attributes:FIELD_ID:0DATA_DESC_ID:0