为什么使用pycdf从CDF文件提取数据时numpy太慢?



我想提取一个变量"时间";从名为"filename. CDF"的CDF文件。为此,我使用了以下代码:

import numpy as np 
from spacepy import pycdf 
data = pycdf.CDF('filename.cdf')
e1 = np.array(data['time']);
e2 = np.hstack([time, e1]) if time.size else e1

变量"time"是5529600。当我执行e1e2时,花了很多时间。

处理如此庞大的数据集的正确方法是什么?

假设不是因为内存不足,这可以解释数组分配缓慢的原因。我建议指定数组的dtype,以避免被推断的代价:

e1 = np.array(data['time'], dtype=np.float32);

e1 = np.array(data['time'], dtype=np.int64);

取决于你想要的数字类型。

相关内容

  • 没有找到相关文章

最新更新