问题 将Excel文件加载到numpy 2D数组中


有没有更简单的方法将excel文件直接加载到Numpy数组?

我看过了 numpy.genfromtxt numpy文档中的自动加载功能,但它不直接加载excel文件。

array = np.genfromtxt("Stats.xlsx")
ValueError: Some errors were detected !
Line #3 (got 2 columns instead of 1)
Line #5 (got 5 columns instead of 1)
......

现在我正在使用 openpyxl.reader.excel 读取excel文件,然后附加到numpy 2D数组。这似乎效率低下。 理想情况下,我希望将excel文件直接加载到numpy 2D数组中。


12549
2018-06-11 20:17


起源



答案:


老实说,如果您正在使用异构数据(如电子表格可能包含的那样) pandas.DataFrame 是一个比使用更好的选择 numpy 直。

pandas 从某种意义上讲,它只是numpy的一个包装器,它非常好地处理异构数据。 (以及其他许多东西......对于“类似电子表格”的数据,它是蟒蛇世界的黄金标准。)

如果你决定走这条路,那就试试吧 pandas.read_excel


12
2018-06-11 20:38



我只想补充一点,将数据帧转换为Numpy 2D数组,你可以使用np.asarray(your_data_frame_here)。 - Tahlor


答案:


老实说,如果您正在使用异构数据(如电子表格可能包含的那样) pandas.DataFrame 是一个比使用更好的选择 numpy 直。

pandas 从某种意义上讲,它只是numpy的一个包装器,它非常好地处理异构数据。 (以及其他许多东西......对于“类似电子表格”的数据,它是蟒蛇世界的黄金标准。)

如果你决定走这条路,那就试试吧 pandas.read_excel


12
2018-06-11 20:38



我只想补充一点,将数据帧转换为Numpy 2D数组,你可以使用np.asarray(your_data_frame_here)。 - Tahlor