我想逐个元素地计算每个不同行之间的差异,而不仅仅是下一行。因此,应计算所有可能的行对和组合。结果应保存在其他数据框中。最后,应计算新行的值之和(一列)。该列的总和应尽可能少。目标是找出获得最佳新行顺序的最佳方法。最后,应按某种方式对行进行排序,以使逐行计算并汇总每一行的差异应尽可能小。
到目前为止,我所做的只是计算下一行的差异:
import pandas as pd
import numpy as np
matrix=np.random.randint(4, size=100).reshape(10,10)
matrix=pd.DataFrame(matrix)
#difference of the next following rows only absolute values
diffmatrix=((matrix.diff(axis=0)).fillna(0)).abs()
#counting differences
diffcount=diffmatrix.sum(axis=1)
如果不清楚,我将再次更新我的帖子。