Python 在Pandas中复制后如何修改数据?

Python 在Pandas中复制后如何修改数据?,python,pandas,Python,Pandas,我试图在Pandas中创建重复行后编辑值。 我只想编辑一列(“代码”),但我发现因为它有重复项,所以会影响整行 是否有任何方法可以先创建副本,然后仅修改已创建副本的数据 import pandas as pd df=pd.read_excel('so.xlsx',index=False) a = df['code'] == 1234 b = df[a] df=df.append(b) print('\n\nafter replicate') print(df) 复制后的电流输出如下:

我试图在Pandas中创建重复行后编辑值。 我只想编辑一列(“代码”),但我发现因为它有重复项,所以会影响整行

是否有任何方法可以先创建副本,然后仅修改已创建副本的数据

import pandas as pd

df=pd.read_excel('so.xlsx',index=False)

a = df['code'] == 1234
b = df[a]
df=df.append(b)
print('\n\nafter replicate')
print(df)


复制后的电流输出如下:

  coun  code name
0    A  123   AR
1    F  123   AD
2    N  7   AR
3    I  0   AA
4    T  10   AS
2    N  7   AR
3    I  7   AA

现在,我希望只更改创建的重复项的值,在本例中是底部两行。但是现在我看到索引也被复制了。

您可以通过使用ignore\u index参数进行追加来避免重复的索引

df=df.append(b, ignore_index=True)
在将数据附加到框架之前,您可能会发现在b中修改数据更容易

import pandas as pd

df=pd.read_excel('so.xlsx',index=False)

a = df['code'] == 3
b = df[a]
b["region"][2] = "N"
df=df.append(b, ignore_index=True)
print('\n\nafter replicate')
print(df)

非常感谢!成功了。而且[:2]把我买到了我需要的最后两排。