计算包含向量的列的大小

Calculating the magnitude of a column containing vectors

我有一列用于存储物理向量,例如力或速度,格式如下:

[0 0]
[-0.011661058152260357 0.00372367132268286]

我想插入一个新列,其中包含此向量的大小。计算很简单:sqrt(x^2 + y^2),其中 x 是第一个数字,y 第二个数字。 问题是如何读取和计算它们。

我怎样才能在 ExcelRMatlab 中实现这一点?

如果这些数字存储在 R 中的数据框中,那么您只需将幅度放在新列中即可:

df <- data.frame(x = rnorm(5), y = rnorm(5)) # fake data
df$mag <- sqrt(df$x^2 + df$y^2)

给出:

           x          y       mag
1 -0.1027138  0.8126019 0.8190678
2  2.4021159 -0.1336111 2.4058289
3 -1.7490194  0.8151816 1.9296605
4  0.4898490  1.2700167 1.3612106
5 -1.6132449  2.2485643 2.7674176

在Excel中:

=SQRT(MID(A1,2,FIND(" ",A1)-1)^2+(MID(A1,FIND(" ",A1),FIND("]",A1)-FIND(" ",A1)-1)^2))