想要计算一个dataframe其中两行的相似度,首先尝试这么写

sin_ab = cosine_similarity(data.loc['A', :], data.loc['B', :])

报错如下:

报错的意思是参数的需求是二维数组,我们却导入了一维。所以需要reshape一下
修改代码为

sin_ab = cosine_similarity(data.loc['A', :].reshape(1, -1), data.loc['B', :].reshape(1, -1))

可以单独输出reshape前后的数据看看两者的区别

强行变成二维数组

又出现报错

因为series对象没有reshape函数,我们需要取其values,将对象变为ndarray以后再进行reshqpe
再次修改代码

sin_ab = cosine_similarity(data.loc['A', :].values.reshape(1, -1), data.loc['B', :].values.reshape(1, -1))

又出现报错:

显然是因为数据中存在nan值,无法计算余弦相似度。使用fillna函数填充以后再次尝试,可以成功

sin_ab = cosine_similarity(data.loc['A', :].fillna(0).values.reshape(1, -1), data.loc['B', :].fillna(0).values.reshape(1, -1))

这里要注意fillna是series对象的函数,不要放错位置

关于cosine_similarity参数的问题相关推荐

  1. pytorch基础知识+构建LeNet对Cifar10进行训练+PyTorch-OpCounter统计模型大小和参数量+模型存储与调用

    整个环境的配置请参考我另一篇博客.ubuntu安装python3.5+pycharm+anaconda+opencv+docker+nvidia-docker+tensorflow+pytorch+C ...

  2. torch F.cosine_similarity使用

    看名字就知道是算余弦相似度,但是有个烦人的参数dim,本文主要解决如下几个问题 dim 参数到底有什么作用?如何设置dim参数 两个矩阵使用该函数算余弦相似度到底是按列向量来算还是按行向量来算? 如果 ...

  3. 在Dockerfile中设置G1垃圾回收器参数

    在Dockerfile中设置G1垃圾回收器参数 ENV JAVA_OPTS="\ -server \ -XX:SurvivorRatio=8 \ -XX:+DisableExplicitGC ...

  4. Java Calendar.add()方法的使用,参数含义。指定时间差。

    cal.add()方法中的参数含义: 第一个参数如果是1则代表的是对年份操作,2是对月份操作,3是对星期操作,5是对日期操作,11是对小时操作,12是对分钟操作,13是对秒操作,14是对毫秒操作. 第 ...

  5. java带参数的方法笔记_具有Java参数的方法的类声明

    类声明可以包含在Java中具有参数的方法.演示此过程的程序如下: 示例class Message { public void messagePrint(String msg) { System.out ...

  6. Gin 框架学习笔记(02)— 参数自动绑定到结构体

    参数绑定模型可以将请求体自动绑定到结构体中,目前支持绑定的请求类型有 JSON .XML .YAML 和标准表单 form数据 foo=bar&boo=baz 等.换句话说,只要定义好结构体, ...

  7. VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、

    1. 生成配置参数 对于大多数的调试都需要在当前项目目录下创建一个 lanch.json 文件,位置是在当前项目目录下生成一个 .vscode 的隐藏文件夹,在里面放置一些配置内容,比如:settin ...

  8. VS Code 安装插件、自定义模板、自定义配置参数、自定义主题、配置参数说明、常用的扩展插件

    1. 下载和官网教程 下载地址:https://code.visualstudio.com/ 官方教程:https://code.visualstudio.com/docs 2. 安装插件 安装扩展插 ...

  9. 浅显易懂 Makefile 入门 (08)— 默认 shell (/bin/sh)、命令回显、make参数(-n 只显示命令但不执行,-s 禁止所有回显)、单行命令、多行命令、并发执行

    1. shell 相关 1.1 默认 shell Makefile 所使用的命令是由 shell 命令行组成,他们是一条一条执行的. 多个命令之间要使用分号隔开,Makefile 中的任何命令都要以 ...

  10. Go 学习笔记(65)— Go 中函数参数是传值还是传引用

    Go 语言中,函数参数传递采用是值传递的方式.所谓"值传递",就是将实际参数在内存中的表示逐位拷贝到形式参数中.对于像整型.数组.结构体这类类型,它们的内存表示就是它们自身的数据内 ...

最新文章

  1. iCup,USB加热饮品方案
  2. rz sz命令_5分钟学linux命令之split
  3. 基于Docker部署Nginx
  4. C#实现数据回滚,A事件和B事件同时执行,其中任何一个事件执行失败,都会返回失败...
  5. 背景图片生成网站收集
  6. 你愿意隐姓埋名一辈子吗?
  7. RTC领域首个AI算法大赛 AI in RTC 2019 创新挑战赛圆满落幕
  8. Win7系统电脑休眠后无法唤醒的解决方法
  9. Java 简单五子棋程序的实现
  10. python中等于列表的某一个值为真,python – 获取值等于特定值的列表中的所有元素...
  11. C#/WPF学习笔记:起始
  12. element环境插件
  13. nginx 安装到Java代码上传图片利用ftp过程遇到的问题总结
  14. SpringMVC中的文件上传与下载,json转换,及三大框架的整合
  15. 解读帖子:结构化编译器前端 Clang 介绍(VS2017编译clang)
  16. python+opencv摄像头人脸检测+代码注释
  17. Windows电脑垃圾清理 - 如何删除临时文件(Temp文件夹)
  18. 如何用HTML5开发一款手机游戏
  19. 适合初学者的java学习网站(1)
  20. Flutter 项目实战 Dio网络请求 四

热门文章

  1. python中group是啥_python中group和groups函数的区别
  2. 卷积操作中的group
  3. 天使轮和种子轮投资降温!2019风投趋势如何走?
  4. python多线程模块threading学习笔记(5)之锁Lock
  5. 一套牛逼哄哄的开源的监控系统(附源码)
  6. shell编程之正则表达式与文本处理器
  7. 基于服务器部署的OCR在线识别应用
  8. 10bit、8bit色彩深度的区别
  9. java.net.MalformedURLException: unknown protocol: jrt 异常解决方法
  10. ShaderWeaver使用教程-动画序列帧