sklearn:Pandas Dataframe vs Numpy ndarray-保存不同数据类型的[600k*1k]



我正在尝试使用sklearn构建一个分类器。我的基础数据集的形状是[6000001000]。在使用sklearn分类器时,哪个更有效?将此数据集保存在数据帧或ndarray中?

ndarray在您提供的信息量方面会更高效,原因很明显,因为panda是为不同的目的设计的,性能并不是其灵活性和用户友好性方面最重要的考虑因素,您可以查看此示例了解更多详细信息

Numpy将更快地进行索引和操作


import pandas as pd
import numpy as np
a = np.random.rand(600000,1000)
s = pd.DataFrame(a)
idx = range(1,100)
%timeit a[idx]
%timeit s.loc[idx]

10000个环路,3个最佳值:每个环路62.9µs

1000个环路,3个最佳:每个环路582µs


底线:numpy更快

最新更新