python是否可以映射数据并生成向量矩阵?

2024-05-19 07:41:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我还是一个刚开始学习python和编程的学生。 这是我的数据

  Doc1              Doc2
 class1  numid     class2 numid
  doc1a   d112       012  d112
  doc1a   d212       013  d212
  doc1a   d312       013  d312
  doc1b   d412       011  d312
  doc1b   d412       011  d412

我想合并他们,并看到结果如下

           d112 d212 d312 d412 
doc1  doc2
doc1a  012   1   0   0   0
doc1a  013   0   1   1   0
doc1b  011   0   0   1   1

Tags: 数据编程doc1学生class1class2doc2numid
1条回答
网友
1楼 · 发布于 2024-05-19 07:41:28

IIUC,使用^{}^{}

cols = ['class1', 'class2']
>>> pd.get_dummies(pd.merge(df, df2, how='outer').set_index(cols), prefix='', prefix_sep='')\
    .drop_duplicates()                                                         \
    .groupby(cols)                                                             \
    .sum()

输出

                 numid_d112   numid_d212    numid_d312    numid_d412
class1  class2              
doc1a   12       1            0             0             0
        13       0            1             1             0
doc1b   11       0            0             0             1

相关问题 更多 >

    热门问题