如果 A 列在 python pandas 中具有相同的名称,则将 B 列的第一个值放在 C 列中并循环

Place the first value of Column B in Column C if Column A has same names in python pandas with loop

我在python,

中有以下数据集

输入

我想将属于列 A 的列 B 的第一个值作为要粘贴到列 C 中的唯一 A 值。

例如。 A 列中的值 a 有 ABC、XYZ 和 PQR,所以在 C 列中我想要 ABC、ABC、ABC 同样对于 A 列中的值 b。

预期输出:

我在 python 中尝试了以下代码。

df['C']=None
for i in range(len(df)):
    if df['A'][i]==df['A'][i+1] and df['C'][i]==None:
        df['C'][i]=df['B'][i]
        if df['A'][i]==df['A'][i+1] and df['C'][i]!=None

我不知道如何进行。 如果有任何帮助,我将不胜感激

df["C"] = df[df.index.isin(df.reset_index().groupby("A")["index"].first().to_list())]["B"]
df["C"].fillna(method='ffill', inplace=True)