我有两个具有常见列名的数据帧。
df1 - > ID,Name,Address,Dept
df2 - > ID,名称,地址,核心
加入后我得到了重复的列。
joinedDF = df1.join(df2,['ID'],"inner")
joinedDF.dtypes -> ID, Name, Address, Dept, Name, Address, Core
如何删除不属于连接的重复列?我想只取两个重复列中的一个。所以期望的输出是 -
joinedDF.dtypes -> ID, df1.Name, df2. Address, Dept, Core
如果使用列名作为String或Array指定连接条件,则不会产生作为连接cols一部分的重复cols(在您的情况下,它是一个col“ID”),但是其他非连接列可能会导致重复。
由于您有重复的cols(不是连接cols的一部分),只需选择所需的列即可
joinedDF = df1.join(df2,['ID'],"inner").select(df1["ID"], df1["Name"], df2["Address"], df1["Dept"],df2["Core"])