我们可以使用pandas库来进行计算,代码示例如下:
import pandas as pd
# 构造数据
data = {'Group': ['A', 'A', 'A', 'B', 'B', 'C'], 
        'X': [1, 3, 5, 2, 4, 6], 
        'Y': [10, 9, 8, 7, 6, 5]}
df = pd.DataFrame(data)
# 根据Group列进行分组,并按X列升序排列
df = df.sort_values(['Group', 'X'])
# 计算相邻行之间的距离
df['Distance'] = df.groupby('Group').apply(lambda x: ((x['X'] - x['X'].shift(1)).pow(2) + (x['Y'] - x['Y'].shift(1)).pow(2)).pow(0.5))
print(df)
输出结果如下:
  Group  X   Y  Distance
0     A  1  10       NaN
1     A  3   9  2.236068
2     A  5   8  2.236068
3     B  2   7       NaN
4     B  4   6  2.236068
5     C  6   5       NaN
其中,Distance列为计算得出的相邻行之间的距离。注意,在计算时需要先对数据按Group列进行分组,再按X列升序排列。如果没有这一步操作,计算结果将会出现错误。