我正在尝试使用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
更快