加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

在python中连接几个np数组

发布时间:2020-12-20 11:43:48 所属栏目:Python 来源:网络整理
导读:我有几个颠簸的数组,我想连接它们.我使用的是np.concatenate((array1,array2),axis = 1).我现在的问题是我想让数组的数量参数化,我写了这个函数 x1=np.array([1,1])x2=np.array([0,1])x3=np.array([1,1,1]) def conc_func(*args): xt=[] for a in args: xt=n
我有几个颠簸的数组,我想连接它们.我使用的是np.concatenate((array1,array2),axis = 1).我现在的问题是我想让数组的数量参数化,我写了这个函数

x1=np.array([1,1])
x2=np.array([0,1])
x3=np.array([1,1,1])  

def conc_func(*args):
    xt=[]
    for a in args:
        xt=np.concatenate(a,axis=1)
    print xt
    return xt

xt=conc_func(x1,x2,x3)

这个函数返回([1,1]),我希望它返回([1,1]).我试图在np.concatenate中添加for循环

xt =np.concatenate((for a in args: a),axis=1)

但我收到语法错误.我不能既不使用append也不使用extend,因为我必须处理numpy数组而不是list.有人可以帮忙吗?

提前致谢

解决方法

concatenate可以接受一系列数组,例如args:

In [11]: args = (x1,x3)

In [12]: xt = np.concatenate(args)

In [13]: xt
Out[13]: array([1,1])

顺便说一下,虽然axis = 1工作,但输入都是一维数组(所以它们只有一个0轴).因此,使用axis = 0或完全省略轴更有意义,因为默认值为axis = 0.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读