0
리눅스 컴퓨터에서는 잘 작동하지만 윈도우에서는 실행되지 않는 코드를 작성했습니다.파이썬 subprocess.check_output 창문으로 변환하기
import subprocess
import pandas as pd
try:
from StringIO import StringIO
except ImportError:
from io import StringIO
def zgrep_data(f, string='', index='TIMESTAMP'):
if string == '':
out = subprocess.check_output(['zgrep', string, f])
grep_data = StringIO(out)
data= pd.read_csv(grep_data, sep=',', header=0)
else:
col_out = subprocess.check_output(['zgrep', index, f])
col_data = StringIO(col_out)
columns = list(pd.read_csv(col_data, sep=','))
out = subprocess.check_output(['zgrep', string, f])
grep_data = StringIO(out)
data= pd.read_csv(grep_data, sep=',',names=columns, header=None)
return data.set_index(index).reset_index()
내가 오류를 받고 있어요 : 는 FileNotFoundError : [WinError 2] 시스템은 내가 os.path.exists (FILE_PATH)으로 그것을 확인하면 파일이
지정 찾을 수 없습니다, 그건 사실 반환 . 이 코드를 수정하여 Python 2 & 3과 Windows 및 Linux에서 모두 작동하도록하는 방법에 대한 조언을 얻을 수 있습니다.
'zgrep'이 경로에 없습니다. 이것은 표준 Windows 명령이 아니므로 Windows 버전을 찾아서 설치해야합니다 ... 오류에 대한 유일한 설명입니다. 어떤 파일을 확인하고 있습니까? 'file_path'는 무엇입니까? –
파일이 내 C 드라이브에 있습니다. C : /Users/Chris/Documents/massivefile.csv –
따라서 파일 경로는 f –