Преобразование файла .pkl в файл .csv - PullRequest
0 голосов
/ 07 мая 2019

Я работаю над файлом python, который требует больших данных, но я не могу редактировать свои данные. Может кто-нибудь предложить мне код, как я могу преобразовать файл .pkl в файл .csv.

1 Ответ

0 голосов
/ 07 мая 2019

Я нашел похожий вопрос здесь:

Как я могу вставить объект python в CSV-файл?

Вам нужен этот пример оттуда:

import base64
with open('a.csv', 'a', encoding='utf8') as csv_file:
    wr = csv.writer(csv_file, delimiter='|')
    pickle_bytes = pickle.dumps(obj)            # unsafe to write
    b64_bytes = base64.b64encode(pickle_bytes)  # safe to write but still bytes
    b64_str = b64_bytes.decode('utf8')          # safe and in utf8
    wr.writerow(['col1', 'col2', b64_str])

Я изменяю его для чтения из вашего файла рассола:

import pickle        
import base64

your_pickle_obj = pickle.loads(open('data.pkl', 'rb').read())
with open('output.csv', 'a', encoding='utf8') as csv_file:
    wr = csv.writer(csv_file, delimiter='|')
    pickle_bytes = pickle.dumps(your_pickle_obj)            # unsafe to write
    b64_bytes = base64.b64encode(pickle_bytes)  # safe to write but still bytes
    b64_str = b64_bytes.decode('utf8')          # safe and in utf8
    wr.writerow(['col1', 'col2', b64_str])
...