У меня есть большой CSV-файл (7 ГБ), и я использовал эти коды для его чтения в Pandas:
chunks=pd.read_table('input_filename', chunksize=500000)
df=pd.DataFrame()
df=pd.concat((chunk==1) for chunk in chunks)
Это работает для меня, потому что файл закодирован горячим способом, поэтому часть chunk==1
преобразует 0 и 1 в логические значения, что сэкономило мне некоторое использование памяти.
Теперь я хочу использовать этот же метод для чтения в другом файле, единственная проблема заключается в том, что в новом файле есть столбец ID
, который не является горячим кодированием. Мой вопрос: как я могу сохранить столбец ID
нетронутым и таким же образом преобразовать остальные столбцы?
Я пробовал некоторые методы подмножества, в том числе:
df=pd.concat((chunk.loc[:, -1]==1) for chunk in chunks)
но ни один из них не работал до сих пор.
Спасибо!