2016-10-06 3 views
0

Я надеялся, что кто-то сможет увидеть, где я здесь не могу. Таким образом, я очистил некоторые данные от buzzfeed, и теперь я пытаюсь отформатировать текстовый файл, с помощью которого я могу затем отправить в data_convert_examples text_to_data formatter.Как форматировать входные данные для textum data_convert_example

Я думал, что у меня был ответ пару раз, но я все еще сталкиваюсь с кирпичной стеной, когда обрабатываю это как двоичное, а затем пытаюсь тренироваться с данными.

Что я сделал, это запустить binary_to_text в наборе игрушек, а затем открыть файл в блокноте ++ под окнами, показывая все символы и сопоставить то, что я считаю форматом.

Я приговариваю к длинной функции ниже, но я действительно не уверен, где может быть проблема, и подумал, что это лучший способ предоставить достаточно информации. У кого-нибудь есть идеи или рекомендации?

def processPath(self, toPath): 
    try: 
     fout = open(os.path.join(toPath, '{}-{}'.format(self.baseName, self.fileNdx)), 'a+') 
     for path, dirs, files in os.walk(self.fromPath): 
      for fn in files: 
       fullpath = os.path.join(path, fn) 
        if os.path.isfile(fullpath): 

         #with open(fullpath, "rb") as f: 
         with codecs.open(fullpath, "rb", 'ascii', "ignore") as f: 
          try: 
           finalRes = "" 
           content = f.readlines() 
           self.populateVocab(content) 

           sentences = sent_tokenize((content[1]).encode('ascii', "ignore").strip('\n')) 
           for sent in sentences: 
            textSumFmt = self.textsumFmt 
            finalRes = textSumFmt["artPref"] + textSumFmt["sentPref"] + sent.replace("=", "equals") + textSumFmt["sentPost"] + textSumFmt["postVal"] 
           finalRes += (('\t' + textSumFmt["absPref"] + textSumFmt["sentPref"] + (content[0]).strip('\n').replace("=", "equals") + textSumFmt["sentPost"] + textSumFmt["postVal"]) + '\t' +'publisher=BUZZ' + os.linesep) 

           if self.lineNdx != 0 and self.lineNdx % self.lines == 0: 
            fout.close() 
            self.fileNdx+=1 
            fout = open(os.path.join(toPath, '{}-{}'.format(self.baseName, self.fileNdx)), 'a+') 

           fout.write(("{}").format(finalRes.encode('utf-8', "ignore"))) 
           self.lineNdx+=1 
          except RuntimeError as e: 
           print "Runtime Error: {0} : {1}".format(e.errno, e.strerror) 
     finally: 
      fout.close() 

ответ

0

После дальнейшего анализа, кажется, что источником проблемы является более с исходными данными и, как она построена, а не data_convert_example.py сама по себе. Я закрываю это, поскольку заголовок не совпадает с исходным кодом проблемы.

Я нашел, что источником моей проблемы было то, что у меня было пространство между «статьей» и знаком «равный». После удаления я смог успешно тренироваться.