我有一个像这样的 pandas 数据框:
admit gpa gre rank
0 3.61 380 3
1 3.67 660 3
1 4.00 800 1
1 3.19 640 4
0 2.93 520 4
我想为第一行设置一个新的 pandas 数据框,但保留原始数据框,例如:
admit gpa gre rank
0 3.61 380 5
admit gpa gre rank
0 3.61 380 3
1 3.67 660 3
1 4.00 800 1
1 3.19 640 4
0 2.93 520 4
我已经尝试过:
df_value = pd.DataFrame(df[0:(0 + 1)])
df_value.set_value(0, '排名', 5)
但是,当我更改新 pandas 中的值时,原始 pandas 中的值也会更改。 对于这个问题你有什么解决办法吗?
最佳答案
您可以使用 copy() 函数:
>>> df_value = df[:1].copy()
>>> df_value["rank"] = 5
>>> df
admit gpa gre rank
0 0 3.61 380 3
1 1 3.67 660 3
2 1 4.00 800 1
3 1 3.19 640 4
4 0 2.93 520 4
>>> df_value
admit gpa gre rank
0 0 3.61 380 5
关于python - 如何在 pandas 中设置新值但保留原始数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19544948/