0

假设我得到了一个任意向量 (x,y,z)。我有一个具有相同类型变量的数据框。(x_i,y_i,z_i)

有没有一种好方法可以最小化数据框中所有行的距离(给定向量的每个分量的距离);我们在哪里最小化 df 列中的(相同类型的变量)?

我的目标是在向量最小化后返回向量的行。

4

1 回答 1

0

假设您有一个向量v和带有向量行的 DataFrame df

In [11]: v = pd.Series([2, 1, 0])

In [12]: df = pd.DataFrame([[1, 1, 1], [2, 2, 2]])

你可以拿他们的不同(即v_i - v

In [13]: df - v
Out[13]:
   0  1  2
0 -1  0  1
1  0  1  2

以及它们的平方和:

In [14]: ((df - v) ** 2).sum(1)
Out[14]:
0    2
1    5
dtype: int64

其中最小的是最接近 的行向量v

In [15]: ((df - v) ** 2).sum(1).argmin()
Out[15]: 0

In [16]: df.loc[0]
Out[16]:
0    1
1    1
2    1
Name: 0, dtype: int64
于 2013-07-30T22:34:25.767 回答