首页 > 解决方案 > 两个列表到熊猫数据框的一对一映射

问题描述

我有两个列表,例如: a = [1,2,3] b = [1,2]

现在,我想像这样在一张地图上进行一对一:

colA colB
1     1
1     2
1     3
2     1
2     2
2     3 

我试过这个但没有用

df = pd.DataFrame()

for i in a:
    df["A"] = i
    
    for j in b:
        df["B"] = j

标签: pythonpandaslistdataframe

解决方案


您可以使用itertools.productpandas.DataFrame构造函数:

import pandas as pd
from itertools import product

pd.DataFrame(product(b, a), columns=['colA', 'colB'])

输出:

   colA  colB
0     1     1
1     1     2
2     1     3
3     2     1
4     2     2
5     2     3

推荐阅读