[英]Plot/graph this csv file
我對 Python 完全陌生,並決定作為工程師在我們的機器學習課程中學習它,但是我在從我的 csv 文件中檢索值時遇到了困難,如下所示:
我想在哪里檢索我的 B、C 和 D 值(從重力傳感器檢索)。
我在 Jupyter Notebook 中嘗試過的代碼:
import numpy as np
import matplotlib.pyplot as plt
data_file = np.genfromtxt("Gravity.csv", delimiter="", names=["A","B","C","D"])
plt.plot(data_file['A'], data_file['B'],data_file['C'],data_file['D'])
plt.show()
我認為您的問題是np.genfromtxt
也在對索引列(值從 1 到 9)以及標題進行編碼,因此當您認為您選擇列'B'
您實際上是在選擇列A
等等。
這應該有效
import numpy as np
import matplotlib.pyplot as plt
data_file = np.genfromtxt("Gravity.csv", delimiter=",", names=["index", "A","B","C","D"], skip_header=1)
plt.plot(data_file['B'],data_file['C'],data_file['D'])
plt.show()
以及相同概念但使用人工數據的工作示例
import pandas as pd
data = pd.DataFrame({'a':[1,2,3], 'b':[2,3,4], 'c':[4,5,6], 'd':[7,8,9]})
data.to_csv('./data.csv')
data2 = np.genfromtxt('./data.csv', delimiter=",", names=["index", "A","B","C","D"], skip_header=1)
plt.plot(data2['B'], data2['C'], data2['D'])
plt.show()
您的數據中有四列( A
、 B
、 C
和D
),但您只提供了三個列名( B
、 C
和D
)。 因此,它將名稱B
鏈接到數據中的A
列,依此類推。 數據中的D
列會像這樣被忽略,因此您需要指定四個名稱,以便可以按預期查詢每一列。
此外,使用pandas
可以很好地處理柱狀數據。
import pandas as pd
data_file = pd.read_csv("Gravity.csv", names = ['A', 'B', 'C', 'D'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.