请看下面的代码片段:
import numpy as np
# Load the .txt file in
myData = np.loadtxt('data.txt')
# Extract the time and acceleration columns
time = myData[:,0]
# Extract the linear acceleration columns
xLinearAcc = myData[:,4]
yLinearAcc = myData[:,5]
zLinearAcc = myData[:,6]
# Find the linear accelerations
xLinearAccSqr = myData[:,0]
for i, v in enumerate(xLinearAcc):
xLinearAccSqr[i] = pow(v,2)
myData 是我的二维数据矩阵。我想要做的是将第 4 列提取到一个新的数组 xLinearAcc 中。然后我将 xLinearAcc 中的每一项平方并将它们存储到另一个新数组 xLinearAccSqr 中。
(我有 xLinearAccSqr = myData[:,0] 的原因是,如果我没有那行,编译器总是告诉我我的 xLinearAccSqr 是未定义的。所以我只是随机使它等于第一列,因为无论如何以后所有的值都被覆盖了。不知道这条线是否会引起麻烦)
然后问题来了。myData 的第一列被奇怪地修改了。我不想要这个。有人可以帮忙吗??我将非常感谢您的帮助!~~
===========================更新======================= =================
问题解决了。在此处发布解决方案可能对其他人有所帮助。
利用
xLinearAccSqr = copy(myData[:,0])
我猜Python如何传递引用而不是值。因此,只需制作一个副本。