numpy 2d阵列拉伸

时间:2018-11-10 12:47:40

标签: python arrays numpy multidimensional-array

我是numpy ndarrays的新手,我找不到解决我问题的方法。 我说过10个浮点数据文件。我对每对文件执行一些操作,返回一维数组。

我想要的是让具有行和列的块矩阵A [10x10]是我的十个文件,并且该矩阵中的每个元素都是一维数组的块,从而将我的操作应用于f_i和f_j。

我猜我需要某种类型的地图,以便我可以告诉“此f_i和f_j结果在特定数组中”,并且可以通过f_i,f_j访问此数组。

实现这一目标的最佳方法是什么?该任务的终点是将该矩阵输出到csv文件中。

数据模式:

data schema

3 个答案:

答案 0 :(得分:0)

您可以在numpy中使用np.append方法。 您可以在numpy.append

中查看详细信息

答案 1 :(得分:0)

也许您可以仅使用嵌套列表(https://docs.python.org/3.7/tutorial/datastructures.html#nested-list-comprehensions)来实现目标:

# build a 10x10 matrix with default value 0
matrix = [[0 for i in range(10)] for j in range(10)]
# assign the result to a cell
matrix[1][1] = ['result', 'of', 'some', 'operation']
# retrieve the result
print (matrix[1][1])
#=> ['result', 'of', 'some', 'operation']

答案 2 :(得分:0)

我认为您可以使用这样的字典来做到这一点:

file_pairs_table = {}
file_a = "file_a.txt"
file_b = "file_b.txt"
file_pairs_table[(file_a,file_b)] = np.arange(999) #operation resulting in 1d array here.

然后像这样访问文件对的值:

file_pairs_table[(file_a,file_b)]
>>> array([0,1,...,998])