2016-07-14 5 views
-1

N.B.私はastropyのテーブルとasciiモジュールの組み合わせを使用しています。astropy.tablesモジュールを使用して大きなコメント付きヘッダーを指定する

私は私のテーブルの上に以下のコメントヘッダを含めるように探しています:私のデータを指して

#1 pxlname  1 
#2 x    0 
#3 y    0 
#4 z    8 
#5 Dist   9 
#6 FUV   6  FUV 
#7 UVW2   6  UVW2 
#8 UVM2   6  UVM2 
#9 NUV   6  NUV 
#10 UVW1   6  UVW1 
#11 sdssu   6  u_sdss  
#12 sdssg   6  g_sdss  
#13 sdssr   6  r_sdss 
#14 sdssi   6  i_sdss  
#15 sdssz   6  z_sdss  
#16 J    6  J_2MASS  
#17 H    6  H_2MASS  
#18 K    6  Ks_2MASS  
#19 FUV_err  7 
#20 UVW2_err  7  
#21 UVM2_err  7  
#22 NUV_err  7 
#23 UVW1_err  7  
#24 sdssu_err  7 
#25 sdssg_err  7 
#26 sdssr_err  7 
#27 sdssi_err  7 
#28 sdssz_err  7 
#29 J_err   7 
#30 H_err   7 
#31 K_err   7 

れる今進めてまいります。

現在、私は次のように私のデータを書き込む:

table_ssp_M33_SWIFT_cat = Table([pxlname, x, y, SDSS_u, SDSS_g, SDSS_r, SDSS_i, SDSS_z], names=('##pxlname', 'x', 'y', 'SDSS_u', 'SDSS_g', 'SDSS_r', 'SDSS_i', 'SDSS_z')) 

ascii.write(table_ssp_M33_SWIFT_cat, 'table_ssp_M33_SWIFT_cat.dat') 

基本的に私は、##pxlname x yなどの上などの列をこのヘッダをしたいと思います。

これは可能ですか?このような

答えて

2

何か:

In [29]: t = Table([[1],[1]], names=('##pxlname', 'x')) 
In [30]: t.meta['comments'] = ['1 pxlname 1', '2 x  0'] # you define these. 
In [31]: t.write('out.dat', format='ascii') 
In [32]: cat out.dat 
# 1 pxlname 1 
# 2 x  0 
##pxlname x 
1 1 

In [33]: t2 = t.read('out.dat', format='ascii', comment='# ') 
In [34]: t2 
Out[34]: 
<Table length=1> 
##pxlname x 
    int64 int64 
--------- ----- 
     1  1 

In [35]: print(t2.meta['comments']) 
['1 pxlname 1', '2 x  0'] 
+0

は私が文字列として '[]'括弧で欲しいものを渡すことができます方法はありますか? – user3125347

+0

't.meta ['comments'] = '長いコメント\ nを含む\ nnewlines'.splitlines()' – Iguananaut

関連する問題