【问题标题】:Pandas dataframe how to add column of distance from previous row?熊猫数据框如何添加与前一行的距离列?
【发布时间】:2020-04-29 07:40:21
【问题描述】:

我有一个位置数据框:

df = X    Y 
     1    1
     2    1
     2    1 
     2    2
     3    3
     5    5    
    5.5   5.5  

我想添加一个列,与上一点的距离: 所以它会是:

df = X    Y    Distance
     1    1     0
     2    1     1
     2    1     0
     2    2     1
     3    3     2
     5    5     2
    5.5   5.5   1

最好的方法是什么?

【问题讨论】:

    标签: python-3.x pandas data-science data-munging


    【解决方案1】:

    您可以使用pd.Series.diff 方法。

    例如,要计算欧拉距离,也使用np.sqrt,你可以这样做:

    import numpy as np
    df["Distance"] = np.sqrt(df.X.diff()**2 + df.Y.diff()**2)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-11
      • 2021-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      • 1970-01-01
      • 2020-06-06
      相关资源
      最近更新 更多