我已經編寫了一個腳本來計算維度中的大型CSV文件:27000行x 22列。 如何在CSV文件中讀取該文件,以便在matplotlib中像散列圖一樣使用它?Python:讀取CSV文件並繪製散點圖
生成的散點圖的概念的理解。嘗試解析csv文件,例如:
data=csv.reader(open('some_file.csv, 'rb'), delimiter='|', quotechar='"')
但沒有成功。
我已經編寫了一個腳本來計算維度中的大型CSV文件:27000行x 22列。 如何在CSV文件中讀取該文件,以便在matplotlib中像散列圖一樣使用它?Python:讀取CSV文件並繪製散點圖
生成的散點圖的概念的理解。嘗試解析csv文件,例如:
data=csv.reader(open('some_file.csv, 'rb'), delimiter='|', quotechar='"')
但沒有成功。
這裏是一個快速的解決方案
def getColumn(filename, column):
results = csv.reader(open(filename), delimiter="\t")
return [result[column] for result in results]
,然後你可以使用它像這樣
time = getColumn("filename",0)
volt = getColumn("filaname",1)
plt.figure("Time/Volt")
plt.xlabel("Time(ms)")
plt.ylabel("Volt(mV)")
plt.plot(time,volt)
是正確的分隔符?您是否閱讀過文檔? http://docs.python.org/library/csv.html
data
是一個文件類對象。您必須迭代它才能訪問數據。每一行都是馬克斯在他的例子中指出的一個列表。
作爲一般的選擇,你可能會感興趣的大熊貓Python包韋斯麥金尼:http://pandas.pydata.org/
它完全改變了我的生活與Python數據分析。它爲Python提供了一個類似於R的data.frame的數據結構,但功能更強大。它建立在numpy之上。
它會非常輕鬆地讀取csv文件,將數據加載到可輕鬆切片和操作的DataFrame(numpy數組子類)中。
什麼 - 特別是 - 「但沒有成功」是什麼意思?你能提供錯誤信息或其他錯誤信息嗎?我們無法猜測。 – 2012-02-27 22:46:39
我們確實需要更多的信息,但是您的代碼中還有一個語法錯誤,如下所示:''somefile.csv'需要一個結束單引號。那只是一個錯字嗎? – Mike 2012-02-27 22:55:45
@Mike:如果沒有**實際的**錯誤信息,那很可能是問題所在。要麼。問題可能是數據只是讀者,而不是實際需要的數據。 – 2012-02-27 23:37:32