Python 将数组转换为latex表,但将长度拆分为多列

Python 将数组转换为latex表,但将长度拆分为多列,python,latex,multiple-columns,astropy,Python,Latex,Multiple Columns,Astropy,因此,我有一个非常长的python表,有两列,我想使用astropy包中的table过程(或任何其他包,如果您有建议),以latex格式创建一个表。因为表中只有两个非常窄的列,所以我想将表的长度拆分为多个列,如下所示: | Data1 Data2 | Data1 Data2 | Data1 Data 2 | 是否有一种简单(自动)的方法来实现这一点,还是通过拆分数组来手动实现更好 作为astropylatex的作者,我可以告诉你,没有自动的方法可以做到这一点。正如在您的问题的一条评论中所

因此,我有一个非常长的python表,有两列,我想使用
astropy
包中的
table
过程(或任何其他包,如果您有建议),以
latex
格式创建一个表。因为表中只有两个非常窄的列,所以我想将表的长度拆分为多个列,如下所示:

| Data1  Data2 | Data1  Data2 | Data1  Data 2 |

是否有一种简单(自动)的方法来实现这一点,还是通过拆分数组来手动实现更好

作为astropy
latex
的作者,我可以告诉你,没有自动的方法可以做到这一点。正如在您的问题的一条评论中所建议的,最好将您的表拆分为三部分,将它们堆叠起来并输出新表:

import sys
import numpy as np
import astropy.table

t = astropy.table.Table([np.arange(9), np.arange(9,18)])
tnew = astropy.table.hstack([t[0:3], t[3:6], t[6:9]])
tnew.write(sys.stdout, format='ascii.latex')

作为astropy
latex
writer的作者,我可以告诉你,没有自动的方法可以做到这一点。正如在您的问题的一条评论中所建议的,最好将您的表拆分为三部分,将它们堆叠起来并输出新表:

import sys
import numpy as np
import astropy.table

t = astropy.table.Table([np.arange(9), np.arange(9,18)])
tnew = astropy.table.hstack([t[0:3], t[3:6], t[6:9]])
tnew.write(sys.stdout, format='ascii.latex')

“相关”侧栏显示。这仍然需要手动添加几行,但这与您想要的结果有多接近?您可以将表分为两个表,然后水平堆叠切片。尽管这样你就不会利用任何特定于LaTeX的特性,所以我不确定它最终会是什么样子。你要问的是一个将python表转换为LaTeX表的方法,还是一个将列表拆分为多列的方法(Evert的评论)?“相关”侧栏显示。这仍然需要手动添加几行,但这与您想要的结果有多接近?您可以将表分为两个表,然后水平堆叠切片。尽管这样你就不会利用任何特定于LaTeX的特性,所以我不确定它最终会是什么样子。你要问的是一种将python表转换为LaTeX表的方法,还是一种将列表拆分为多列的方法(Evert的评论)?