我有一个数据帧(DF),它看起来像:尝试更新数据帧
0 1 2 3
0 BBG.apples.S BBG.XNGS.bananas.S 0
1 BBG.apples.S BBG.XNGS.oranges.S 0
2 BBG.apples.S BBG.XNGS.pairs.S 0
3 BBG.apples.S BBG.XNGS.mango.S 0
4 BBG.apples.S BBG.XNYS.mango.S 0
5 BBG.XNGS.bananas.S BBG.XNGS.oranges.S 0
6 BBG.XNGS.bananas.S BBG.XNGS.pairs.S 0
7 BBG.XNGS.bananas.S BBG.XNGS.kiwi.S 0
8 BBG.XNGS.oranges.S BBG.XNGS.pairs.S 0
9 BBG.XNGS.oranges.S BBG.XNGS.kiwi.S 0
10 BBG.XNGS.peaches.S BBG.XNGS.strawberrys.S 0
11 BBG.XNGS.peaches.S BBG.XNGS.strawberrys.S 0
12 BBG.XNGS.peaches.S BBG.XNGS.strawberrys.S 0
13 BBG.XNGS.peaches.S BBG.XNGS.kiwi.S 0
我试图用更新的数据框的值(第一行,第三列):
for index, row in df.iterrows():
status = row[3]
if int(status) == 0:
df[index]['3'] = 1
但是当我打印数据帧时,它仍然不变
有人能让我知道我在做什么错吗?
谢谢
'iterrows()'只返回单个发电机,'指数,row'是两个值。你想更新什么价值? ('df [index] ['3']'应该代表什么行和什么列?) – Chris
你确定你的列名是字符串(“3”)而不是整数吗?当您尝试访问该列时,这可能会造成混淆。如果有疑问,请参阅您从打印中获得的内容(df.columns)。 – Craig