我通过创建一个临时中间文件将一种文件格式转换为另一种文件格式。以下是我的代码:
import tempfile
import pandas as pd
from pandas import DataFrame
def convert_binary_step1(file1,file2,file3):
source=open(file1)
SampleList=convert_file_to_list(file2)
dest=open(file3,'w')
ti= tempfile.NamedTemporaryFile(delete=False)
l=[]
for line in source:
a=line.split()
del a[-1]
for i in range(len(SampleList)):
if SampleList[i] in a:
l.append("1")
else:
l.append("0")
data=a[0]+"t"+"t".join(l)+"n"
ti.write(data.encode("utf-8"))
del l[:]
source1=pd.read_csv(ti,sep="t",encoding='utf-8',header=None)
dest=source1.transpose()
dest.to_csv(file3,sep="t",header=None,index=None)
source.close()
dest.close()
ti.close()
def convert_file_to_list(file2):
source11=open(file2)
li=[]
for lin in source11:
b=lin.split()
li+=[b[0]]
return li
source11.close()
但是,代码正在生成错误 - emptyDataError:没有从文件解析的列。
尝试一下 - 它将返回到文件的顶部:
file.seek(0)