0

任意のベクトル (x,y,z) が与えられたとします。同じ型の変数を持つデータフレームがあります。(x_i,y_i,z_i)

データフレーム内のすべての行で (指定されたベクトルの各コンポーネントの) 距離を最小限に抑える良い方法はありますか? df 列の (同じ型の変数) を最小化する場所は?

私の目標は、最小化された後、ベクトルの行を返すことです。

4

1 に答える 1

0

ベクトルと、ベクトルの行を持つvDataFrameがあるとします。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 に答える