krg*_*krg 2 python numpy pre-allocation
我想初始化一个包含一些数据的数组。我创建了一个随机矩阵(使用np.empty),然后将其乘以np.nan。有什么问题吗?或者我应该坚持更好的做法吗?
进一步解释我的情况:我有需要存储在数组中的数据。假设我有 8 行数据。每行的元素数不相等,所以我的矩阵行长度需要和最长的行一样长。在其他行中,某些元素将不会被填充。我不想使用零,因为我的一些数据实际上可能是零。
我意识到我可以使用一些我知道我的数据永远不会使用的值,但 nans 绝对更清晰。只是想知道这是否会导致以后的处理出现任何问题。我意识到我需要使用nanmax代替max等等。
我创建了一个随机矩阵(使用 np.empty),然后将其乘以 np.nan。有什么问题吗?或者我应该坚持更好的做法吗?
您可以使用np.full,例如:
np.full((100, 100), np.nan)
Run Code Online (Sandbox Code Playgroud)
但是,根据您的需要,您可以查看numpy.ma掩码数组或scipy.sparse稀疏矩阵。不过,它可能适合也可能不适合。无论哪种方式,您都可能需要使用来自相应模块的不同功能,而不是普通的 numpy ufunc。