Python 将列表元组(索引、列表(要素))转换为列值为要素布尔值的数据帧

Python 将列表元组(索引、列表(要素))转换为列值为要素布尔值的数据帧,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有以下数据列表: [(1[1,2]),(2[1,2]),(3[1])] 并希望将其转换为一个数据帧 1 2 1 True True 2 True True 3 True False 有没有一种内置的方法?不是真正的“内置”,但很快: l = [(1, [1,2]), (2, [1,2]), (3,[1])] df = pd.DataFrame([ i[1] for i in l ], index = [ i[0] for i in l ]).notnull() 输出:

我有以下数据列表:

[(1[1,2]),(2[1,2]),(3[1])]

并希望将其转换为一个数据帧

   1   2  
1 True True
2 True True
3 True False
有没有一种内置的方法?

不是真正的“内置”,但很快:

l = [(1, [1,2]), (2, [1,2]), (3,[1])]

df = pd.DataFrame([ i[1] for i in l ], index = [ i[0] for i in l ]).notnull()
输出:

      0      1
1  True   True
2  True   True
3  True  False
…如果列名不一定必须是1,2

如果需要的话,这是对@piRSquared解决方案的无耻剽窃:

df = pd.DataFrame([ i[1] for i in l ], [ i[0] for i in l ], [ 1, 2 ]).notnull()
如果希望列名为1,2

df.columns=[1,2]

df
Out[231]: 
      1      2
1  True   True
2  True   True
3  True  False
# use from_dict to load the list after converting it to a dict.
df = pd.DataFrame.from_dict({e[0]:e[1] for e in l},orient='index')>0

      0      1
1  True   True
2  True   True
3  True  False
df.columns=[1,2]

df
Out[231]: 
      1      2
1  True   True
2  True   True
3  True  False