【发布时间】:2021-10-30 08:42:48
【问题描述】:
我有一个 .csv 格式的数据集。包含 2099846 行和 38 列 我想计算任何一对行的欧几里得距离并设置为另一个二维数组。
import pandas as pd
import numpy as np
data = pd.read_csv('fraudDataset.csv', encoding= 'unicode_escape')
row = len(data)
data = data.astype(int)
distanceMatrix = np.zeros((np.shape(data)))
for datai in range(len(data)):
for dataj in range( datai + 1,len(data)):
distanceMatrix[datai,dataj] = np.linalg.norm(data[3] - data[4], ord=None, axis=None, keepdims=False)
但它给出了错误
return self._engine.get_loc(casted_key)
File "pandas\_libs\index.pyx", line 70, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\index.pyx", line 101, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\hashtable_class_helper.pxi", line 1675, in pandas._libs.hashtable.PyObjectHashTable.get_item
File "pandas\_libs\hashtable_class_helper.pxi", line 1683, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 3
您能帮我完成这项任务吗?
【问题讨论】:
-
其实没有。我知道如何计算欧几里得距离,我已经尝试过,但它给了我同样的错误