-3

假设我们有如下数据框:

姓名 性别

约翰 - 男

梅丽莎 - 女

数据类型

名称 -> 对象

性 -> 对象

在 Sex 列中分别将整数值 1 和 2 分配给男性和女性值的最佳方法是什么。

注意:我使用的是 python 3.6。

4

2 回答 2

0

您可以将整数值分配给对象数据类型值。

>>> name = ['John','Melissa']
>>> sex = ['Male', 'Female']
>>> name_sex = []
>>> for i in sex:
...     if i == 'Male':
...             name_sex.append(1)
...     else:
...             name_sex.append(2)
...
>>> print(name_sex)
[1, 2]

结合姓名和性别

>>> name_sex1 = []
>>> list1 = list(map(str, name_sex))
>>> list1
>>> for i, j in zip(name, list1):
...     a1 = ' '.join([i, j])
...     name_sex1.append(a1)
...
>>> for i in name_sex1:
...     print(i)
...
John 1
Melissa 2
于 2018-01-30T07:18:06.550 回答
-1

你的问题不清楚。您可以使用类似 data['Sex'] = data['Sex'].map({'Male': 0, 'Female': 1})

如果您为机器学习问题执行此操作,则可能必须将数据类型更改为分类以获得更好的学习效果,而不是字符串或整数。

于 2018-01-30T04:35:11.337 回答