如何使用Pandas在Python中读取文本文件

时间:2017-03-07 05:00:36

标签: python pandas scatter-plot

我是Pandas的新手,我一直在尝试在Python 2.7中进行散点图,我在.txt文件中的数据集是这样的(逗号分隔)

6.1101,17.592
5.5277,9.1302
8.5186,13.662
7.0032,11.854
5.8598,6.8233
8.3829,11.886
7.4764,4.3483



import pandas as pd
import matplotlib.pyplot as mplt

# Taking Dataset using Pandas

input_data = pd.read_csv('data.txt');
#input_data.head(5)

如何在数据集上没有任何标题的散点图中绘制上述数据?

我在教程和示例中看到,如果数据集具有列标题,则可以绘制散点图。我尝试将x和y作为.txt文件中两列数据集的标题,并尝试使用以下代码。

input_data = pd.read_csv('data.txt');
#input_data.head(5)
x_value = input_data[['x']]
y_value = input_data[['y']]

mplt.scatter(x_value, y_value)

但我仍然收到错误,如下所示

Traceback (most recent call last):
  File "E:\IIT Madras\Research\Experiments\Machine Learning\Linear Regression\Linear_Regression.py", line 16, in <module>
    y_value = input_data[['y']]
  File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 1791, in __getitem__
    return self._getitem_array(key)
  File "C:\Python27\lib\site-packages\pandas\core\frame.py", line 1835, in _getitem_array
    indexer = self.ix._convert_to_indexer(key, axis=1)
  File "C:\Python27\lib\site-packages\pandas\core\indexing.py", line 1112, in _convert_to_indexer
    raise KeyError('%s not in index' % objarr[mask])
KeyError: "['y'] not in index"

有没有更好的方法来解决这个问题(有没有标题名称)?

编辑:

以下通过Ishan回复后对我有用

input_data = pd.read_csv('data.txt', header =None);
x_value = input_data[[0]]
y_value = input_data[[1]]
mplt.scatter(x_value, y_value)
mplt.show()

1 个答案:

答案 0 :(得分:5)

尝试导入没有列标题的数据,然后自己命名列:

df=pd.read_csv(r'/home/ishan/Desktop/file',header=None)
df.columns=['x','y']
import matplotlib.pyplot as plt
plt.scatter(df['x'],df['y'])
plt.show()
相关问题