2017-03-18 6 views
0

私は30kのサイズのデータ​​セットを持っています。私は "ネイティブカントリー"というタイトルの列を持っています。私はその列のすべての一意の値に対して新しい変数を作成したいのです(アルゴリズムは数値のみを扱うことができるので、テキストをバイナリ形式に変換する必要があります)。pandas get_dummies構文エラー

私は次のようにします。無効な構文

任意の提案をしてください。

Native Country = pd.get_dummies(dataset.Native Country , prefix='Native Country') 
Native Country.head() 

私は、次のエラーメッセージ

にSyntaxErrorを取得します。

答えて

0

Python識別子には空白を使用できません。したがって、変数名に空白の代わりにアンダースコアを使用する必要があります。カラム名に空白がある場合は、.の代わりに[…]のカラムにアクセスする必要があります。

In [1]: import pandas as pd 

In [2]: dataset = pd.DataFrame({'Native Country': ['a', 'b', 'a']}) 

In [6]: native_country = pd.get_dummies(dataset['Native Country'], prefix='Native Country' 
    ...:) 

In [7]: native_country.head() 
Out[7]: 
    Native Country_a Native Country_b 
0     1     0 
1     0     1 
2     1     0 
+0

ありがとうございます。お返事ありがとうございました – Jim

+0

@ジム、あなたは大歓迎です:)左のチェックマークをクリックすると、回答を受け入れることができます。これはあなたと私にいくつかの評判のポイントを与えます。 :) –

+0

@ジム、また、4つの空白の字下げでコードを書式化する方が良いことに注意してください( 'Alt + K 'で簡単に行うことができます)。私はあなたの質問をこのように編集しましたが、今は少し良くなっています。 –