我最初尝试用pandas pd.read_csv读取一个4 4GB的csv文件,但是我的系统内存不足(我猜),并且内核正在重启或者系统挂起。因此,我尝试使用vaex库将csv转换为HDF5并对其执行操作(聚合、分组依据)。为此,我使用了:
df = vaex.from_csv('Wager-Win_April-Jul.csv',column_names = None, convert=True, chunk_size=5000000)
and
df = vaex.from_csv('Wager-Win_April-Jul.csv',header = None, convert=True, chunk_size=5000000)但是,我仍然将csv文件中的第一条记录作为标题(准确地说是列名),并且我无法更改列名。我试着找到函数来更改名称,但没有遇到任何问题。请在这方面帮我一下。谢谢:)
列名为1559104、10289、991...实际上是csv中的第一条记录,不知何故,vaex将第一行作为我的列名,这是我想要避免的

发布于 2020-10-20 07:02:17
vaex.from_csv是pandas.read_csv的包装器,几乎没有用于转换的额外选项。
因此,如果您希望csv阅读器自动推断列名,请阅读pandas文档header='infer' (这是默认设置)。否则,将使用文件的第一行作为标题。或者,您可以通过names kwarg手动传递列名。vaex和pandas也是如此。
我会阅读pandas.read_csv文档,以便更好地理解所有选项。然后,您可以将这些选项与vaex以及convert和chunk_size参数一起使用。
https://stackoverflow.com/questions/64244113
复制相似问题