首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何堆栈多个Astropy表

如何堆栈多个Astropy表
EN

Stack Overflow用户
提问于 2014-07-30 19:38:39
回答 1查看 459关注 0票数 1

我有一个for循环,它生成多个变量,比如abc。在for循环通过循环后,我想垂直地堆叠变量。这是我想做的事。(为了举例,假设变量只是数字(1,2,3) )。

代码语言:javascript
复制
from astropy.table import Table
N1 = 3
N2 = 5
a = zeros((N2,N1))
b = zeros((N2,N1))
c = zeros((N2,N1))
for i in range(N2):    
   a[i] = range(N1)
   b[i] = range(N1)
   c[i] = range(N1)
   t  = Table([a[i], b[i], c[i]], names=('a', 'b', 'c'), meta={'name': 'first table'})

当我print t的时候

代码语言:javascript
复制
 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0

我想得到的是:

代码语言:javascript
复制
 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0

非常感谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-30 22:16:46

例如,如果希望重复n=5时间的行数,只需使用vstack,类似于numpy.vstack,如下所示:

代码语言:javascript
复制
>>>from astropy.table import vstack
>>>t1=vstack([t,t,t,t,t])
>>>print t1

 a   b   c 
--- --- ---
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
0.0 0.0 0.0
1.0 1.0 1.0
2.0 2.0 2.0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25045491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档