使用熊猫的欧几里得距离矩阵

算盘

我有一个.csv文件,其中包含以下格式的城市,纬度和经度数据:

CITY|LATITUDE|LONGITUDE
A|40.745392|-73.978364
B|42.562786|-114.460503
C|37.227928|-77.401924
D|41.245708|-75.881241
E|41.308273|-72.927887

我需要以以下格式创建距离矩阵(请忽略虚拟值):

         A         B         C         D         E   
A  0.000000  6.000000  5.744563  6.082763  5.656854  
B  6.000000  0.000000  6.082763  5.385165  5.477226  
C  1.744563  6.082763  0.000000  6.000000  5.385165
D  6.082763  5.385165  6.000000  0.000000  5.385165  
E  5.656854  5.477226  5.385165  5.385165  0.000000  

我已将数据加载到pandas数据框中,并创建了一个交叉联接,如下所示:

import pandas as pd
df_A = pd.read_csv('lat_lon.csv', delimiter='|', encoding="utf-8-sig")
df_B = df_A
df_A['key'] = 1
df_B['key'] = 1 
df_C = pd.merge(df_A, df_B, on='key')  
  • 您能帮我建立上述矩阵结构吗?
  • 另外,是否可以避免涉及交叉连接的步骤?
最大容量

您可以使用pdistsquareform从方法scipy.spatial.distance

In [12]: df
Out[12]:
  CITY   LATITUDE   LONGITUDE
0    A  40.745392  -73.978364
1    B  42.562786 -114.460503
2    C  37.227928  -77.401924
3    D  41.245708  -75.881241
4    E  41.308273  -72.927887

In [13]: from scipy.spatial.distance import squareform, pdist

In [14]: pd.DataFrame(squareform(pdist(df.iloc[:, 1:])), columns=df.CITY.unique(), index=df.CITY.unique())
Out[14]:
           A          B          C          D          E
A   0.000000  40.522913   4.908494   1.967551   1.191779
B  40.522913   0.000000  37.440606  38.601738  41.551558
C   4.908494  37.440606   0.000000   4.295932   6.055264
D   1.967551  38.601738   4.295932   0.000000   2.954017
E   1.191779  41.551558   6.055264   2.954017   0.000000

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用big.matrix对象计算欧几里得距离矩阵

来自分类Dev

使用CUDA计算矩阵对应行之间的欧几里得距离

来自分类Dev

使用欧几里得距离的Numpy数组中的邻接矩阵

来自分类Dev

Excel中的欧几里得距离矩阵

来自分类Dev

如何将高程合并到熊猫的欧几里得距离矩阵中?

来自分类Dev

使用自己的计算熊猫创建距离矩阵

来自分类Dev

使用Numpy有效地计算欧几里得距离矩阵

来自分类Dev

使用Numpy有效地计算欧几里得距离矩阵

来自分类Dev

Matlab中给出的欧几里得距离矩阵的邻接矩阵

来自分类Dev

在Python中计算和使用欧几里得距离

来自分类Dev

根据x,y,z坐标计算欧几里得距离矩阵

来自分类Dev

如何加速我的 3D 欧几里得距离矩阵代码

来自分类Dev

重塑熊猫中的距离矩阵

来自分类Dev

使用欧几里得距离与曼哈顿距离实现 k 均值?

来自分类Dev

设置欧几里得距离

来自分类Dev

欧几里得距离数学错误

来自分类Dev

欧几里得距离数学错误

来自分类Dev

如何使用外积计算R中的成对欧几里得距离

来自分类Dev

如何使用外部乘积计算R中的成对欧几里得距离

来自分类Dev

熊猫数据框中行的距离矩阵

来自分类Dev

矢量数据的熊猫距离矩阵性能

来自分类Dev

计算矩阵A和B中所有行之间的欧几里得距离

来自分类Dev

如何计算由包含x,y的矩阵定义的两点之间的欧几里得距离?

来自分类Dev

如何计算矩阵中两个元素之间的最大欧几里得距离-R?

来自分类Dev

如何在没有for循环的情况下有效计算欧几里得距离矩阵?

来自分类Dev

如何有效地计算多个时间序列的欧几里得距离矩阵

来自分类Dev

没有双重for循环的两个python矩阵之间的欧几里得距离?

来自分类Dev

用R计算欧几里得距离

来自分类Dev

从字典计算欧几里得距离(sklearn)

Related 相关文章

  1. 1

    使用big.matrix对象计算欧几里得距离矩阵

  2. 2

    使用CUDA计算矩阵对应行之间的欧几里得距离

  3. 3

    使用欧几里得距离的Numpy数组中的邻接矩阵

  4. 4

    Excel中的欧几里得距离矩阵

  5. 5

    如何将高程合并到熊猫的欧几里得距离矩阵中?

  6. 6

    使用自己的计算熊猫创建距离矩阵

  7. 7

    使用Numpy有效地计算欧几里得距离矩阵

  8. 8

    使用Numpy有效地计算欧几里得距离矩阵

  9. 9

    Matlab中给出的欧几里得距离矩阵的邻接矩阵

  10. 10

    在Python中计算和使用欧几里得距离

  11. 11

    根据x,y,z坐标计算欧几里得距离矩阵

  12. 12

    如何加速我的 3D 欧几里得距离矩阵代码

  13. 13

    重塑熊猫中的距离矩阵

  14. 14

    使用欧几里得距离与曼哈顿距离实现 k 均值?

  15. 15

    设置欧几里得距离

  16. 16

    欧几里得距离数学错误

  17. 17

    欧几里得距离数学错误

  18. 18

    如何使用外积计算R中的成对欧几里得距离

  19. 19

    如何使用外部乘积计算R中的成对欧几里得距离

  20. 20

    熊猫数据框中行的距离矩阵

  21. 21

    矢量数据的熊猫距离矩阵性能

  22. 22

    计算矩阵A和B中所有行之间的欧几里得距离

  23. 23

    如何计算由包含x,y的矩阵定义的两点之间的欧几里得距离?

  24. 24

    如何计算矩阵中两个元素之间的最大欧几里得距离-R?

  25. 25

    如何在没有for循环的情况下有效计算欧几里得距离矩阵?

  26. 26

    如何有效地计算多个时间序列的欧几里得距离矩阵

  27. 27

    没有双重for循环的两个python矩阵之间的欧几里得距离?

  28. 28

    用R计算欧几里得距离

  29. 29

    从字典计算欧几里得距离(sklearn)

热门标签

归档