python - 计算曼哈顿距离并返回最低的 3 个距离
问题描述
鉴于:
df = pd.DataFrame(np.random.randint(0,100, size= (10,4)), columns=list('ABCD'))
df['category']= ['apple','orange','grape','berry','strawberry','banana','kiwi','lemon','lime','pear']
我想让用户选择一个类别,比如“Apple”,然后让我的函数计算 Apple 与所有其他类别之间的曼哈顿距离并返回 3 个最接近的值(最小差异)。我不确定如何编写一个调用数据框中列的函数,但这就是我所拥有的:
def Manhattan_d(category_name):
return df['A'][0]-df['A'][1]+df['B'][0],(df['B'][1])+df['C'][0]-df['C'][1]+df['D'][0]
解决方案
推荐阅读
- python - 这些奇怪的转义字符是什么,我如何解析/忽略它们?
- laravel - 将用户属性添加到 Laravel 护照令牌
- logging - 在 Wildfly 11 中,如何禁止创建 console.log 文件?
- c++ - 如何使用 Visual Studio 属性窗口更改控件定位?
- node.js - 基本 HTTP 身份验证(使用 Express 的 Node 本地主机除外)
- angular - 无法将空值分配给变量
- java - Netty readBytes 引用计数
- javascript - How to use JavaScript in PDF to discern a user's operating system
- python - 将格式应用于浮动时出错
- mysql - 如何使用模型在mysql中透视表