可以使用,请帮助解决以下问题:
给定两个数据帧df1和df2,需要获取类似于结果数据帧的内容。
import pandas as pd
import numpy as np
feature_list = [ str(i) for i in range(6)]
df1 = pd.DataFrame( {'value' : [0,3,0,4,2,5]})
df2 = pd.DataFrame(0, index=np.arange(6), columns=feature_list)
预期的数据框: 需要通过将df1中的值与df2中的列名(功能)进行比较来驱动。如果它们匹配,我们将1放入resultDf
此处的预期输出(或resultsDf):
答案 0 :(得分:0)
我认为您需要:
(pd.get_dummies(df1['value'])
.rename(columns = str)
.reindex(columns = df2.columns,
index = df2.index,
fill_value = 0))
0 1 2 3 4 5
0 1 0 0 0 0 0
1 0 0 0 1 0 0
2 1 0 0 0 0 0
3 0 0 0 0 1 0
4 0 0 1 0 0 0
5 0 0 0 0 0 1