python - 为什么只有 df.to_numpy() 参与计算时数据帧会被更改?
问题描述
import pandas as pd
import numpy as np
url = "https://raw.githubusercontent.com/PawinData/UC/SFBA/DistanceMatrix_shortestnetworks.csv"
Distance_df = pd.read_csv(url, index_col=0)
D = Distance_df.to_numpy()
我有一个数据框Distance_df
,我将它转换为一个 numpy 数组D
进行计算。随后发生的事情只涉及D
,根本不涉及Distance_df
。然而,两者D
最终都Distance_df
被改变了(相同的东西)。
虽然我也不知道为什么D
会改变,但Distance_df
最让我困惑的是数据框的行为。当它甚至没有出现在代码中时,它怎么能被改变呢?不知何故,我感觉到这与代码无关,而是在幕后如何处理值和对象。有人可以解释一下吗?
解决方案
尝试获取不被更改的数据框副本
import pandas as pd
import numpy as np
url="https://raw.githubusercontent.com/PawinData/UC/SFBA/DistanceMatrix_shortestnetworks.csv"
Distance_df = pd.read_csv(url, index_col=0)
df=Distance_df.copy()
D = df.to_numpy()
推荐阅读
- rasa-nlu - RASA NLU:无法提取实体
- jquery - 验证包含 Ajax jquery 的表单函数
- python - 如何每三秒添加一次对象?
- java - Java:将字节字符串转换为字节数组
- mysql - node+express+mysql+cloud9页面显示图片
- ruby-on-rails - Capistrano deploy 命令后没有任何反应
- javascript - 在 javascript 中创建一个可以从 jQuery UI 拖放的对象
- python - 显示 MessageBox 时出现 Python New TKinter 窗口
- go - 如何从杜松子酒的前端获取数据?
- c# - 制作一个弹出面板,询问我是否确定要在 Unity 中购买特定商品