假设以下数据帧:
id A
1 0
2 10
3 200
4 3000
我想在所有行与所有其他行之间进行计算。
例如,如果计算是lambda r1, r2: abs(r1-r2)
,那么输出将是(以某种顺序)
id col_name
1 10
2 200
3 3000
4 190
5 2990
6 2800
问题:
我希望尽可能地将所有内容都放在一个表中,以一种仍然支持合理查找的方式。你知道吗
我的数据规模不大,而且永远不会。你知道吗
编辑1:
回答我问题2的一个方法是
id col_name origin1 origin2
1 10 1 2
2 200 1 3
3 3000 1 4
4 190 2 3
5 2990 2 4
6 2800 3 4
我想知道这是否是标准的,是否有一种内在的方法,或者是否有另一种/更好的方法
使用广播减法,然后
np.tril_indices
提取下对角线(正值)。你知道吗或者,使用
subtract.outer
避免预先转换为数组。你知道吗如果您也需要索引,请使用
IIUC
itertools
更新
相关问题 更多 >
编程相关推荐