怎么把pd.get_dummies显示的结果呈现0或1
时间: 2024-10-06 10:03:42 浏览: 41
在 Pandas 库中,使用 `pd.get_dummies` 函数将类别数据转换为哑变量(dummy variables)时,默认值会被编码为0和1。这个函数通常应用于 One-Hot Encoding,其中每个类别对应一列,如果某条记录属于某个类别,则对应的那一列的值就是1,不属于则为0。
例如:
```python
import pandas as pd
# 假设你有一个DataFrame df,有一个名为'category'的分类列
df = pd.DataFrame({'category': ['A', 'B', 'A', 'C']})
# 使用 get_dummies
dummies = pd.get_dummies(df['category'])
# 输出结果
print(dummies)
```
输出将会是一个笛卡尔积矩阵,每一列代表一个类别,如果是该类别则值为1,否则为0。比如:
```
A B C
0 1 0 0
1 0 1 0
2 1 0 0
3 0 0 1
```
这里'A'列表示原数据中有'A'的情况,'B'列表示有'B'的情况等。
相关问题
pd.get_dummies(data['等级']) data.join(pd.get_dummies(data['等级']))
这段代码的作用是将 DataFrame 数据中的 '等级' 列进行 one-hot 编码,并将编码结果添加到原 DataFrame 中作为新的列。其中,pd.get_dummies() 函数用于进行 one-hot 编码,data['等级'] 表示要进行编码的 DataFrame 列,data.join() 函数用于将编码结果添加到原 DataFrame 中。
pd.get_dummies
`pd.get_dummies`是Pandas库中的一个函数,它将分类变量转换为哑变量/虚拟变量。具体来说,它将一个包含分类变量的DataFrame或者Series作为输入,然后对每个分类变量创建一个新的列,该列包含0和1,表示该变量是否存在。这样可以将分类变量转换为数值型变量,以便于在机器学习算法中使用。
例如,假设我们有一个包含“性别”列的DataFrame,其中包含“男”和“女”两个分类变量。我们可以使用`pd.get_dummies`函数将其转换为两列,每列包含0或1,表示该行中的性别是否为男或女。
示例代码如下:
```
import pandas as pd
df = pd.DataFrame({'Gender': ['Male', 'Female', 'Male', 'Male', 'Female']})
dummies = pd.get_dummies(df['Gender'])
df = pd.concat([df, dummies], axis=1)
print(df)
```
输出结果:
```
Gender Female Male
0 Male 0 1
1 Female 1 0
2 Male 0 1
3 Male 0 1
4 Female 1 0
```
在这个例子中,我们将“Gender”列转换为了“Female”和“Male”两个虚拟变量,并将其添加到原始DataFrame中。
阅读全文