91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python實現txt文件格式轉換為arff格式

發布時間:2020-10-10 06:24:57 來源:腳本之家 閱讀:264 作者:君的名字 欄目:開發技術

本文實例為大家分享了python實現txt文件格式轉換為arff格式的具體代碼,供大家參考,具體內容如下

將文件讀取出來的時候默認都是字符型的,所以有轉換出來有點問題,但是還是可以用的。

文件要求第一行是你對應的屬性名,之后是數字。

import sys 
import re 
 
relationname = "" 
filename = "" 
 
if (len(sys.argv)<2): 
  print("Usage:\npython arff.py MyRelationName filename.txt") 
else: 
  relationname = sys.argv[1] 
  filename = sys.argv[2] 
 
 
class Arff: 
  def __init__(self, r, f): 
    self.relationname = r if r is not "" else "MachineLearning" 
    f = f if f is not "" else "MMG_data.txt" 
    self.file1 = open(f, 'r') 
    self.data = [] 
    self.names = [] 
    self.parseData() 
    self.writeToFile() 
 
  def parseData(self): 
    firstLine = True 
    for line in self.file1.readlines(): 
      if not firstLine: 
        try: 
          line = line.replace("\n", "") 
          words = line.split(" ") 
        except ValueError: 
          print("cant parse file!!") 
        self.data.append(words) 
      else: 
        firstLine = False 
        line = line.replace("\n", "") 
        words = line.split(" ") 
        self.names = words 
 
  def getType(self, value): 
    v = "" 
    if(type(value) == type(1)): 
      v = "numeric" 
    elif(type(value) == type(1.0)): 
      v = "numeric" 
    elif(re.match("[0-9]{4}\-[0-9]{2}\-[0-9]{2}\s[0-9]{2}\:[0-9]{2}\:[0-9]{2}", value)): 
      v = "date " + "yyyy-MM-dd HH:mm:ss" 
    elif(type(value) == type("string")): 
      v = "string" 
    elif(v == ""): 
      print("Data type "+value+" not supported yet.") 
    return v 
 
  def writeToFile(self): 
    values = self.data[0] 
    file2 = open("Dexhunter_test_result.arff", 'w+' ) 
 
    self.relationname+="\n" 
 
    relationString = '@RELATION ' + self.relationname 
    file2.write(''+relationString+'') 
 
    for i in range(len(self.names)): 
      str2 = "@ATTRIBUTE " + self.names[i] + " " + self.getType( values[i] ) + "\n" 
      file2.write(''+str2+'') 
    file2.write('''''@DATA\n''') 
 
    for line in self.data: 
      try: 
        file2.write(",".join(line)+"\n") 
      except UnicodeEncodeError: 
          print("cant write Data to file!!") 
 
Arff(relationname, filename) 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

翁源县| 黄山市| 广州市| 麦盖提县| 壤塘县| 横峰县| 新蔡县| 探索| 大同县| 扎鲁特旗| 合山市| 辽阳县| 刚察县| 勃利县| 鹿邑县| 皮山县| 乌拉特前旗| 乡宁县| 安龙县| 龙南县| 铜川市| 河东区| 上栗县| 新巴尔虎左旗| 镇安县| 海兴县| 沁水县| 绍兴市| 凤城市| 定兴县| 游戏| 松潘县| 普兰店市| 拜城县| 福鼎市| 基隆市| 鹤山市| 大厂| 抚州市| 宁陕县| 牡丹江市|