我试图为数学处理创建一个numpy数组,我似乎无法正确格式化我的代码。我有来自numpy数组的信号:'A','B','C','D','E'
我想成为"标题"或者我的数组的第0行。以下行我想从存储信号的同一个numpy数组插入值,其中:
values = np.array(dat_arr[:,7])
signals = ['A','B','C','D','E']
我知道格式[[signals],[values]]
不正确,因为我想要一个输出类似的数组:
[A, B, C, D, E,
3, 4, 7, 5, 8,
5, 2, 1, 6, 9]
等
我是numpy和python编程的新手。有什么想法吗?
答案 0 :(得分:0)
您可以使用structured types执行此操作。对于包含以下内容的文本文件:
A, B, C, D, E
3, 4, 7, 5, 8
5, 2, 1, 6, 9
你可以这样做:
a = np.genfromtxt('test.txt', names=True, delimiter=',')
为了获得这种结构化数组,你可以这样做:
print(a['A'])
#[ 3. 5.]
编辑:
你也可以从列表列表中获取结构化数组,在这种情况下它可能是这样的:
values = [[3, 4, 7, 5, 8],
[5, 2, 1, 6, 9]]
signals = ['A','B','C','D','E']
a = np.rec.array(values, dtype=list(zip(signals, [float]*len(signals))))