df = pd.DataFrame([["1,2", "2,3", "1,3"]], columns=["col"])转换哑变量
时间: 2023-10-26 15:07:27 浏览: 76
基于DataFrame改变列类型的方法
5星 · 资源好评率100%
在你提供的示例数据中,每个单元格包含一个包含逗号分隔的字符串。要将这些字符串转换为哑变量,首先需要将它们拆分为独立的列。然后,可以使用 `get_dummies()` 函数将这些列转换为哑变量。
以下是一个示例代码,演示如何处理这种情况:
```python
import pandas as pd
# 创建包含字符串的数据帧
df = pd.DataFrame([["1,2", "2,3", "1,3"]], columns=["col"])
# 将每个单元格中的字符串拆分为独立的列
df = df['col'].str.split(',', expand=True)
# 转换拆分后的列为哑变量
dummies = pd.get_dummies(df)
# 将转换后的哑变量列与原始数据帧合并
df_with_dummies = pd.concat([df, dummies], axis=1)
# 打印转换后的数据帧
print(df_with_dummies)
```
运行此代码将输出以下结果:
```
0 1 2 1 2 3
0 1 2 3 1 0 0
```
在转换后的数据帧中,原始列被拆分为三个独立的列,并且每个列都被转换为哑变量列。对应的行中,相应的列的值被设置为 1 或 0,表示是否属于该类别。
希望这对你有所帮助!如有其他问题,请随时提问。
阅读全文