在pandas中把两列数据框转换为发生矩阵[英] Convert Two column data frame to occurrence matrix in pandas

本文是小编为大家收集整理的关于在pandas中把两列数据框转换为发生矩阵的处理方法,想解了在pandas中把两列数据框转换为发生矩阵的问题怎么解决?在pandas中把两列数据框转换为发生矩阵问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

大家好,我有一个 csv 文件,其中包含以下格式的数据

A   a
A   b
B   f
B   g
B   e
B   h
C   d
C   e
C   f

第一列包含项目第二列包含来自特征向量的可用特征=[a,b,c,d,e,f,g,h]我想将其转换为如下所示的出现矩阵

    a,b,c,d,e,f,g,h
A   1,1,0,0,0,0,0,0
B   0,0,0,0,1,1,1,1
C   0,0,0,1,1,1,0,0

谁能告诉我如何使用 pandas 做到这一点?

推荐答案

这是使用 pd.get_dummies() 的另一种方法.

import pandas as pd

# your data
# =======================
df

  col1 col2
0    A    a
1    A    b
2    B    f
3    B    g
4    B    e
5    B    h
6    C    d
7    C    e
8    C    f

# processing
# ===================================
pd.get_dummies(df.col2).groupby(df.col1).apply(max)

      a  b  d  e  f  g  h
col1                     
A     1  1  0  0  0  0  0
B     0  0  0  1  1  1  1
C     0  0  1  1  1  0  0

本文地址:https://www.itbaoku.cn/post/1728120.html