2013-05-21 41 views
1

我有一個看起來像一個文件:讀ASCII文件空條目在python

145.342050 -0.906349 4915 
145.463209 -0.844225 4915 
145.502417 -0.966603 
145.582172 -0.892733 4917 
145.618846 -0.972673 
145.681139 -0.867231 4883 
145.821685 -0.846610 4883 

我試圖用np.genfromtxt沒有成功。

import numpy as np 
a,b,c = np.genfromtxt('filename',missing_values=" ",unpack=True) 

任何知道好方法的人只能存儲具有三個條目的行或填充空的位置?我沒有管理的np.genfromtxt

編輯:
這是錯誤的Python拋出:

Line #23 (got 2 columns instead of 3) 
+1

是不是參數名'filling_values'取代'fill_values'? http://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html –

+0

@JohannesCharra對不起,這是一個錯字,感謝您的注意。我編輯了它 – madzone

+0

您的文件格式爲_exactly_作爲示例文件,即_no_空格在第三列丟失行中的第二列之後?在你的函數調用中,參數'missing_values =「」'意味着一個空格表示一個缺失的值。在您的示例文件中,這不是true_,因此這不起作用。另外,如果示例文件中的分隔符爲3 x空格,並且未指定此分隔符,則該函數會將這些空格視爲_three缺少的values_。因此,如果您確實想使用'np.genfromtxt',請考慮在可能的情況下重新格式化您的文件。 – hooy

回答

0
import numpy as np 
a,b,c = np.genfromtxt('filename',missing_values=" ", filling_values = 0 ,unpack=True) 
+0

thx爲答案,我完全嘗試過這與相同的負面結果'行#...(有2列而不是3)' – madzone