我有一个大数据框。让我写一个示例数据框,让您理解我的问题。
A B C
car red 15
car blue 20
car grey 14
bike red 6
bike blue 8
phone red 9
phone blue 11
phone grey 10
假设 C 列显示价格。我想添加一个名为“D”的列。此列将回答“读取的汽车是否比所有汽车的平均价格贵?”。以及其他 A 值的相同问题。我的问题基本上就是这样。我想看到这个:
A B C D
car red 15 cheap
car blue 20 expensive
car grey 14 cheap
bike red 6 cheap
bike blue 8 expensive
phone red 9 cheap
phone blue 11 expensive
phone grey 10 cheap
我写了太多方法来完成这个任务。最后我认为这段代码可以解决我的问题,但事实并非如此。我用 While 循环尝试了同样的事情,但我一直收到 Key Error 0。我该怎么办?这是我试过的代码:
df["D"] = "cheap"
A.values = df.A.unique()
for b in A.values:
for i in range(len(df.loc[data.A== b])):
if df.loc[df.A== b, "C"][i] >= df.loc[df.A== b, "C"].mean():
df.loc[df.A== b, "D"][i] = "expensive"
冉冉说
慕田峪4524236
相关分类