[英]Python: Reading CSV file and plotting a scatter
我編寫了一個腳本來計算尺寸為大的csv文件:27000行x 22列。 如何在CSV文件中讀取以便在matplotlib中使用它,就像這個線程中的散點圖一樣?
生成散點圖的概念是可以理解的。 已嘗試通過以下方式解析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)
作為一般替代方案,您可能對Wes McKinney的pandas python包感興趣: http : //pandas.pydata.org/
它實際上改變了我使用python進行數據分析的生活。 它為python提供了類似於R的data.frame的數據結構,但功能更強大。 它建立在numpy之上。
它將非常容易地讀取csv文件,將數據加載到可以輕松切片和操作的DataFrame(numpy數組子類)中。
這是正確的分隔符嗎? 你看過文件了嗎? http://docs.python.org/library/csv.html
data
是一個類文件對象。 您必須迭代它才能訪問數據。 每一行都是馬庫斯在他的例子中指出的列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.