南洲. 2023-12-29 17:30 采纳率: 0%
浏览 7

dataFrame的嵌套修改内容时,如何不影响原有的dataFrame,如代码

all_fileds_avg = pd.DataFrame()
all_fileds_avg.loc[0,'grid_connection']  = [{'active_power':1.0,'power factor':0.23,'reactive_power':-0.8}]

print(all_fileds_avg)
all_device_df = all_fileds_avg.copy()
insert_data_5vg_df = all_fileds_avg.copy() # 5分钟均值表
insert_data_quality_df = all_fileds_avg.copy() # 用于质控均值表

all_fileds_avg["grid_connection"].values[0][0]["active_power"] = 100

print(all_device_df)
print(all_fileds_avg)
print(insert_data_5vg_df)

我需要all_device_df 、insert_data_5vg_df 和insert_data_quality_df 都是互不影响,但是现在是绑定的,更改任何一个都会修改其他的任何一个

  • 写回答

2条回答 默认 最新

  • cjh4312 2023-12-29 17:52
    关注

    使用深拷贝。copy对于嵌套的内容都是指向同一个位置的。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 12月29日