我的熊猫数据框的格式为
T1 T2
0 A B
1 C D
2 B C
3 D E
4 F A
我想生成另一个熊猫数据框,该数据框列出T1和T2中的每个唯一项都有其自己的行,并具有一列具有该唯一项的名称的列和一列具有其共享项的列表的列。在原始数据帧中排成一行。例如,在这种情况下,我将寻找以下形式的东西:
Name List
0 A [B, F]
1 B [A, C]
2 C [D, B]
3 D [C, E]
4 E [D]
5 F [A]
有人可以建议采用合适的Pandonic方法(例如pythonic但对于大熊猫:))吗?预先感谢!
答案 0 :(得分:3)
IIUC,交换列并使用pandas.DataFrame.columns
:
df2 = df.copy()
df2.columns = df.columns[::-1]
new_df = pd.concat([df, df2])
new_df.groupby("T1")["T2"].apply(list).reset_index()
输出:
T1 T2
0 A [B, F]
1 B [C, A]
2 C [D, B]
3 D [E, C]
4 E [D]
5 F [A]