Python 如何从具有相同x值的多类标签生成二进制向量

Python 如何从具有相同x值的多类标签生成二进制向量,python,pandas,dataframe,Python,Pandas,Dataframe,比如说 train = pd.DataFrame({"letter":["hem", "hem", "hem", "kiran","kiran"], "val": ['A','B','C','A','B']}) train letter val hem A hem B hem C kiran A kiran B train=pd.concat([train,pd.get_dummies(train['val'])], axis=1) letter va

比如说

train = pd.DataFrame({"letter":["hem", "hem", "hem", "kiran","kiran"], "val": ['A','B','C','A','B']})
train

letter  val
hem     A
hem     B
hem     C
kiran   A
kiran   B


train=pd.concat([train,pd.get_dummies(train['val'])], axis=1)

letter  val A   B   C
hem     A   1   0   0
hem     B   0   1   0
hem     C   0   0   1
kiran   A   1   0   0
kiran   B   0   1   0
但是如何从唯一字母生成向量呢 这意味着基于y列,它为每个y值创建虚拟值 我的问题是如何基于y为每个x值创建向量

像下面这张我想要的桌子

letter      A   B   C
hem         1   1   1
kiran       1   1   0

在代码末尾添加以下代码:

print(train.groupby('letter', as_index=False).sum())