【发布时间】:2016-03-24 15:09:55
【问题描述】:
总的来说,我对 numpy 和 python 还是很陌生。即使我已确保两个数组具有相同的维度,当我尝试附加值时,仍会出现维度不匹配错误。我还有一个问题是为什么 numpy 在从制表符分隔的文本文件中读取数据时会创建一维数组。
import numpy as np
names = ["Angle", "RX_Power", "Frequency"]
data = np.array([0,0,0],float) #experimental
data = np.genfromtxt("rx_power_mode 0.txt", dtype=float, delimiter='\t', names = names, usecols=[0,1,2], skip_header=1)
freq_177 = np.zeros(shape=(data.shape))
print(freq_177.shape) #outputs(315,)
for i in range(len(data)):
if data[i][2] == 177:
#np.concatenate(freq_177,data[i]) has same issue
np.append(freq_177,data[i],0)
我得到的输出是
所有输入数组的维数必须相同
【问题讨论】:
-
你能输出数据的形状吗?如果您的数据与 freq_177 的形状相同,则您应该无法索引第二个维度
-
数据形状为 (315,) data[i] is (0.0, -86.0, 177.0) at i = 0
-
我认为这是由于 getfromtxt 导致的,因为我尝试将数据声明为多维
标签: python arrays numpy append text-files