我无法将CSV文件中的数据读入内存,因为它太大了,即pandas.read_csv使用pandas无法正常工作.
我只想根据应该适合内存的一些列值来获取数据.使用df可能假设包含CSV中的完整数据的pandas数据帧 ,我会这样做
df.loc[(df['column_name'] == 1)
Run Code Online (Sandbox Code Playgroud)
CSV文件确实包含一个标题,它是有序的,所以我真的不需要使用,column_name但如果必须的话,该列的顺序.
我怎样才能做到这一点?我读了一些关于pyspark的内容,但我不知道这是否有用
您可以按块读取csv文件块并保留您想要的行
iter_csv = pd.read_csv(='sample.csv', iterator=True, chunksize=10000,error_bad_lines=False)
data = pd.concat ([chunk.loc[chunk['Column_name']==1)] for chunk in iter_csv] )
Run Code Online (Sandbox Code Playgroud)