首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绘制/绘制此csv文件

绘制/绘制此csv文件
EN

Stack Overflow用户
提问于 2020-09-24 21:49:33
回答 3查看 132关注 0票数 0

作为一名工程师,我对Python完全陌生,并决定在我们的机器学习课程中学习Python,但是我在从csv文件中检索值时遇到了困难,该文件如下所示:

我想要检索我的B、C和D值(从重力传感器检索)。

我在我的Jupyter Notebook中尝试过的代码:

代码语言:javascript
复制
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()
EN

回答 3

Stack Overflow用户

发布于 2020-09-24 22:10:41

我将你的文件转换成这样的格式

代码语言:javascript
复制
A,B,C,D

0.1, 0.5, 0.1, 0.8

0.2, 0.1, 0.4, 0.1

0.1, 0.3, 0.1, 0.1 

并使用以下代码

代码语言:javascript
复制
import pandas as pd
values= pd.read_csv('./test.csv')

这是可行的

票数 0
EN

Stack Overflow用户

发布于 2020-09-24 22:35:00

我认为您的问题是,np.genfromtxt还对索引列(值从1到9)和标题进行了编码,因此当您认为选择的是列'B'时,实际上是在选择列A,依此类推。

这应该是可行的

代码语言:javascript
复制
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()

和一个使用人工数据的相同概念的工作示例

代码语言:javascript
复制
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()
票数 0
EN

Stack Overflow用户

发布于 2020-09-24 22:08:09

数据中有四列(ABCD),但只提供了三个列名(BCD)。因此它将名称B链接到数据中的列A,依此类推。数据中的列D会像这样被忽略,因此您需要指定四个名称,以便可以像您预期的那样查询每列。

此外,使用pandas可以很好地处理列数据。

代码语言:javascript
复制
import pandas as pd
    
data_file = pd.read_csv("Gravity.csv", names = ['A', 'B', 'C', 'D'])
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64047920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档