其目的是构造一个具有一些修改的字典的dataframe:
df = pd.DataFrame({'1-7':[0,0,1],'1-2':[1,0,1],'2-3':[1,0,0],'2-2':[0,1,0],'1-1':[1,0,0],'1-3':[0,1,1],'1-5':[0,1,0]},index=dici.keys())
df

数据:
我有一本这样的字典:
dici={'a':['1-1','1-2','2-3'],'b':['2-2','1-5','1-3'],'c':['1-7','1-2','1-3']}
dici

列表dici.values()的联合将用作列名,列表dici.keys()将用作索引名。
df中的数据解释:例如,如果值'1-1'将/equals退出到列名,则该值将为1,否则,该值将为0。
发布于 2022-03-13 14:51:13
您可以将dict转换为一个Series对象,然后通过任意随机字符串将它们连接起来,并使用.str.get_dummies
df = pd.Series(dici).str.join('x').str.get_dummies('x')输出:
>>> df
1-1 1-2 1-3 1-5 1-7 2-2 2-3
a 1 1 0 0 0 0 1
b 0 0 1 1 0 1 0
c 0 1 1 0 1 0 0https://stackoverflow.com/questions/71457182
复制相似问题