2017-03-07 22 views
1

私はPandasを使い慣れていて、Python 2.7で散布図を作ろうとしていましたが、このような.txtファイルのデータセットを持っています(カンマ区切り)Pandasを使ってPythonでテキストファイルを読む方法

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ファイルのデータセットの2つの列のヘッダーとして入れてみましたが、以下のコードを試しました。

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" 

以下のようにまだ私はエラーを取得しています(ヘッダ名ととせずに)これに対処するためのより良い方法はありますか?

EDIT:

次イシャンを経て、私のために働いた返信

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() 
+2

することができますヘッダーまたは名前を追加するか、数値索引で列を参照します。 'read_csv'のパラメータは' names'です。http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html – pvg

答えて

3

あなた自身のことで、列を列ヘッダーなしでデータをインポートして、命名してみてください。

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() 
+0

が働いていましたが、x、yの代わりにインデックス0と1を使いました。 –

関連する問題