Python:读取CSV文件并绘制散点图

Python:读取CSV文件并绘制散点图,python,csv,matplotlib,scatter,Python,Csv,Matplotlib,Scatter,我编写了一个脚本来计算尺寸为27000行x22列的大型csv文件。 我如何读取CSV文件,以便在matplotlib中的散乱图(如本线程中的散乱图)中使用它 理解生成散点图的概念。已尝试解析csv文件,例如: data=csv.reader(open('some_file.csv, 'rb'), delimiter='|', quotechar='"') 但是没有成功。这里有一个快速的解决方案 def getColumn(filename, column): results = cs

我编写了一个脚本来计算尺寸为27000行x22列的大型csv文件。 我如何读取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)

这是正确的分隔符吗?你看过文件了吗


数据
是一个类似文件的对象。您必须对其进行迭代才能访问数据。正如marcus在其示例中指出的那样,每一行都是一个列表。

作为一般的替代方案,您可能会对Wes McKinney的pandas python包感兴趣:

它确实改变了我使用python进行数据分析的生活。它为python提供了一个类似于R的data.frame的数据结构,但功能更强大。它是建立在numpy之上的


而且它可以非常轻松地读取csv文件,将数据加载到一个数据框(numpy数组子类)中,该数据框可以很容易地进行切片和操作。

具体来说,“但没有成功”是什么意思?您能否提供错误消息或其他错误指示?我们真的猜不出来。我们确实需要更多信息,但此处发布的代码中还有一个语法错误:
'somefile.csv
需要一个结束单引号。这只是一个打字错误吗?@Mike:如果没有实际的错误信息,很可能就是问题所在。或问题可能在于,数据只是一个阅读器,而不是所需的实际数据。抱歉,响应太晚。我犯了两个大错误:第一,我选择了错误的分隔符,第二个错误是marcus,dm指出了它:我没有想到数据是一个类似文件的对象……第三个错误可能是:我没有对我所遇到的问题做任何精确的解释。