首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在numpy中使用one()获取数字数组?

如何在numpy中使用one()获取数字数组?
EN

Stack Overflow用户
提问于 2019-05-22 09:03:51
回答 2查看 99关注 0票数 1

嗨,我有一个在Matlab中的代码,这是生成以下序列。

[ones(1,6*2) 2 ones(1,6*2-1) 2 ones(1,6*2) 1]

ans =

  Columns 1 through 18
     1    1    1    1    1    1    1    1    1    1    1    1    2    1    1    1    1    1

  Columns 19 through 36
     1    1    1    1    1    1    2    1    1    1    1    1    1    1    1    1    1    1

  Columns 37 through 38
     1    1

我想用Python生成类似的数字数组。

我试着生成如下代码。

ConvStride = [np.ones((12,),dtype=int),2,np.ones((11,),dtype=int),2,np.ones((12,),dtype=int),1]

Ans= [1 1 1 1 1... 1],2,[1 1 1 ... 1],2,[1 1 1 1....1],1

ConvStride = [np.ones((12,),dtype=int),2,np.ones((11,),dtype=int),2,np.ones((12,),dtype=int),1]

必填项

1 1 1.1 2 1 1 1.1 2 111....1 1

你能告诉我这附近有什么工作吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-22 09:10:21

可以使用类似的python语法创建列表,然后将其转换为numpy数组。

import numpy as np

x = [1]*(6*2) + [2] + [1]*(6*2-1) + [2] + [1]*(6*2) + [1]
ans = np.array(x)

如果你想用numpy来完成所有的工作,你可以使用hstack

np.hstack([np.ones(6*2, int), 2, np.ones(6*2-1, int), 2, np.ones(6*2, int), 1])
票数 2
EN

Stack Overflow用户

发布于 2019-05-22 09:12:16

使用np.r_

np.r_[np.ones(12,int),2,np.ones(11,int),2,np.ones(12,int)]
# array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
#        1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56248030

复制
相关文章

相似问题

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