在numpy中高效地创建表

2024-10-19 16:34:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在实现cky算法,我用python中的列表列表尝试了一次,用numpy.zero尝试了一次,列表每次都更快。我认为numpy会更快,但我对使用它还不熟悉,很可能我没有以最有效的方式编写它。也有可能我只是使用了一个小数据集,而列表列表在较小的数据集上速度更快

唯一不同的是表的实例化:

直线python:

  table = [[[] for i in range(length)] for j in range(length)]

和numpy:

 table = np.zeros((n_dimension, n_dimension), dtype=object)
  for i in range(n_dimension):
      for j in range(n_dimension):
          table[i][j] = []

我认为numpy的运行速度较慢,因为我没有优化我的表的形成方式,而pythonic方法是最有效的。如何在numpy中进行类似的优化实现,以便准确评估两者之间的时间差?或者在这种情况下,列表的速度更快?numpy在哪一点上比列表更有效


Tags: 数据innumpy算法列表for方式table