pandas get_dummies 语法错误

pandas get_dummies syntax error

我有一个大小为 30k 的数据集。我有一列标题为 "Native Country" 我想为该列中的每个唯一值创建一个新变量(我使用的算法只能处理数值,因此我需要将文本转换为二进制形式)。

当我使用以下内容时:

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

我收到以下错误消息

语法错误:语法无效

有什么建议吗

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