两个表之间的连接有问题。更具体地说,我有一个第一个表(dfu 1),它有一个列'B'和树行。在“B”列的每一行中,我有一个有三个值的单元格(B列中的九个值在三行中),确切地说,每个单元格都有一个有三个值的数组。另外,我有两个单值列
在第二张桌子上,我有九行。以及列“name”,其数据与列“B”中第一帧中的数据相同。但在这里,它们被划分成不同的行
我想我需要第一帧,把它改成九行。在这个意义上,我必须打破这些向量。然后将两个框架分别连接到第一个框架中的新列和第二个框架中的“name”列
这是第一帧,共有三行:
Df_1 = pd.DataFrame({
'A': ['White','Black','Yellow'],
'B': [['lamp','bed','wardrobe'],['sink','glass','towel'],['kitchen','toilet','room']],
'C': [4,2,9]
})
这是第二帧,共九行:
Df_2 = pd.DataFrame({'Number' :['six','one','nine','ten','four','five','two','three','nine'],
'Name': ['lamp','bed','wardrobe','sink','glass','towel','kitchen','toilet','room'],
'Description': ['large','small','loud','weak','loyal','loyal','loud','large','small']})
这是第三帧,是第一帧和第二帧的基础
Df_3 = pd.DataFrame({'A': ['white','white','white','Black','Black','Black','Yellow','Yellow','Yellow'],
'Name': ['lamp','bed','wardrobe','sink','glass','towel','kitchen','toilet','room'],
'C': [4,4,4,2,2,2,9,9,9],
'Description': ['large','small','loud','weak','loyal','loyal','loud','large','small']
})
也许有人知道一个更有效的方法,但你可以用暴力来强迫它,然后使用一个循环
尝试以下方法:
爆炸Df\ U 1
使用concat和melt,在这种情况下非常有用
合并到Df\ U 2中
然后您只需要使用merge,选择所需的列,将Df\u1\ufinal合并到Df\u2中
结果和Dfè3完全一样
相关问题 更多 >
编程相关推荐