0

次の構造を持つ 3 つの大きな tsv ファイルがあります。

 file1 : id,f1,f2,name,f3
 file2 : id,f4,blah1,f5
 file3 : id,f5,f6,blah2

他のファイルから抽出した 3 番目のファイルを作成したい:

 result: id,name,blah1,blah2

panda|vaex のファイルの 1 つを読み込もうとすると、ファイル全体を読み取ろうとするため、プロセスがクラッシュするため、現在はできません。

どうやってするか.. ?

結果のファイルをvaexで使用します...それでも〜1Gになると思います


f1 = vaex.read_csv('stuff.tsv',convert=True,sep='\t') 

その後 :

f1.join(f2,left_on='id',right_on='id')
4

2 に答える 2

1

「変換」はファイルをメモリにロードしません...が、チャンクで動作します

f1 = vaex.read_csv('stuff.tsv',convert=True,sep='\t') 
f2 = vaex.read_csv('stuff2.tsv',convert=True,sep='\t') 

fx1 = f1['id','blah1']
fx2 = f2['id','blah2']

その後 :

ff = fx1.join(fx2,left_on='id',right_on='id')
ff.export_hdf5('file.hdf5')
于 2021-02-17T23:08:15.680 に答える