2012-12-10 198 views
0

我想從應包含5列的.CSV文件讀取表格。 但是,一些行有損壞的數據..使它超過5列。使用PYTHON讀取具有損壞數據的Excel文件

如何拒絕這些行並繼續閱讀?

*使用

臨時= read_table(文件夾+ R '\ TEMP.TXT,九月= R' \ T')

只是給出了一個錯誤,並停止該程序*

我是Python新手...請幫助 謝謝

+0

你確定要用於分隔符原始字符串?你可以發佈你的'read_table'函數嗎? – dm03514

+0

我的分隔符是選項卡....這是如何使用製表符作爲分隔符。該文件在某些​​地方已損壞。所以,而不是5列,有15 ...我需要拒絕超過5列的行 –

回答

2

看看使用Python的csv module

沒有測試損壞的文件,很難說這是否會做到這一點,但csvreader讀取一個csv文件的行作爲一個字符串列表,所以你可能會檢查列表是否有5個元素,並以這種方式進行。

一個代碼示例:

out = [] 
with open('file.csv', 'rb') as csvfile: 
    reader = csv.reader(csvfile, delimeter=' ') 
    for row in reader: 
     if len(row) == 5: 
      out.append(row) 
+0

抱歉....格式是.lvm不是.csv請建議更改 –

+0

我不完全熟悉.lvm格式,但它似乎與csv非常相似,因此值得嘗試一下我的建議。否則,如果你可以在文本編輯器中打開.lvm文件並在這裏​​粘貼一些示例數據,這可能會幫助我解決問題。 – timc

+0

13/11/2012 7:31:59 AM t1 = 17.1600,c1 = -0.00034,s = 0.0000,lat = 37 52.9112 S,lon = 147 58.2424 E,hms = 203149,dmy = 121112 13/11/2012 7:32:00 AM t1 = 17.1598,c1 = -0.00036,s = 0.0000 13/11/2012 7:32:01 AM t1 = 17.1598,c1 = -0.00034,s = 0.0000,lat = 37 52.9111 S,lon = 147 58.2423 E,hms = 203151,dmy = 121112 IT IS SPACE DELIMITED –