@neuro4live

Как создать DataFrame?

Всем привет! Мне необходимо результаты работы программы запущенной через суб процесс записывать в таблицу csv. Подсказали что это можно сделать с помощью библиотек пандас, на основе результатов создать DataFrame, а после создать csv файл куда будет всё записано. В таблицу попадают все значения, которые я укажу в DataFrame, но именно результата работы программы там нету, однако он отображается в терминале. На скриншоте видно что появляется в таблице. 6048ab40eba06470422948.pngПожалуйста подскажите как это сделать. Заранее спасибо
Вот код:
import pandas as pd
import subprocess
from time import sleep
p=subprocess.Popen(['/usr/bin/python3', '/home/roman/PycharmProjects/uznaemfileID/fileid.py', 'stdout=subprocess.PIPE', 'stderr=subprocess.STDOUT'])
result=p.stderr
sleep(1)


#create a pandas dataframe
df = pd.DataFrame({'file_id': [result]})
#create a csv file
df.to_csv("data.csv")
p.terminate()
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ответы на вопрос 1
@o5a
Подозреваю, что предполагалось сделать это:
p=subprocess.Popen(['/usr/bin/python3', '/home/roman/PycharmProjects/uznaemfileID/fileid.py'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
result=p.stdout.read()


Только если это работа с питоновскими скриптами, правильнее было бы импортировать модуль и вызывать функции напрямую, без прослойки в виде subprocess.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы