Это мое лучшее предположение о том, чего вы пытаетесь достичь.
В будущем постарайтесь предоставить наборы данных и минимальный воспроизводимый пример.
desc = ["aa, bc, cd, cd, aa, bb", "xy, jk, yb"]
comp = ["abc", "xyz"]
df = pd.DataFrame({"comp": comp, "desc":desc})
#split words into tokens
df["desc"] = df.desc.str.split(", ")
#stack words per group
stacked = pd.DataFrame(df.desc.tolist(), index=df.comp).stack().reset_index()
stacked.columns = ["comp", "drop", "token"]
#group by comp and token and count occurances
stacked.groupby(["comp","token"]).size().reset_index()