我想讀取python中的csv文件,以便我可以使用numpy.average在其中一列中找到平均值。 我的腳本是這樣的:讀取python中的csv文件時的整數
import os
import numpy
import csv
listing = os.listdir('/path/to/directory/of/files/i/need')
os.chdir('/path/to/directory/of/files/i/need')
for file in listing[1:]:
r = csv.reader(open(file, 'rU'))
for row in r:
if len(row)<2:continue
if float(row[2]) <=0.05:
avg = numpy.average(float(row[2]))
print avg
,但我不斷收到錯誤ValueError異常:無效的文字浮法()。 csv閱讀器似乎正在讀取數字作爲字符串,並且不允許我將其轉換爲浮點數。有什麼建議麼?
您能否提供包含腳本扼流器值之一的csv文件中的示例? – thegrinner
我想你已經傳遞了一個空字符串,所以你需要添加一個簡單的檢查 - 'if row [2] .strip()和float(row [2])<= 0.05:' –
@Artisom:這將導致錯誤消息「float()的空字符串」,而不是「float()的無效文字」。 –