猿问

从简单字典创建数据框

我有一本像下面这样的字典,


{'A': 0, 'C': 0, 'B': 1, 'E': 3, 'D': 1, 'G': 0, 'F': 0, 'I': 3, 'H': 3, 'J': 1}

使用这本字典,我想创建一个如下所示的 Pandas 数据框,


   A  B  C  D  E  F  G  H  I  J

0  1  0  1  0  0  1  1  0  0  0

1  0  1  0  1  0  0  0  0  0  1

2  0  0  0  0  0  0  0  0  0  0

3  0  0  0  0  1  0  0  1  1  0

上面字典的键 - 值对代表列名 -使用这个值的索引我想创建一个像上面一样的数据框。例如,'A': 0表示第 0 个索引值的列 A 应该是 1,同样'E': 3,表示第 3 个索引值的列 E 应该是 1。


到目前为止,我试过这个,


df=pd.DataFrame(index=range(max(my_dic.values())),columns=[req_cols])

for u,v in my_dic.items():

    df.at[v,u]=1

print df.fillna(0)

上面的代码工作正常,但我认为这不是解决这个问题的有效方法。有没有更好的有效方法来解决这个问题?


慕莱坞森
浏览 201回答 2
2回答
随时随地看视频慕课网APP

相关分类

Python
我要回答