提供的行名称在R中的长度错误

用户名

我正在运行一个R程序,该程序计算产品说明之间的相似性。程序的输入是一个具有1列的文件,其中包含产品说明列表,每个产品说明都位于单独的行上

我还有一个包含产品标题列表的文件,每个文件都在单独的行上。

使用dist函数,我计算了产品说明之间的相似度,并将它们存储在dist.mat中作为矩阵。

接下来,我想将产品标题加入到我计算出的相似度中。因此,我阅读了名称中的产品标题,然后:

dist.mat <- data.frame(dist.mat, row.names=Names[,1])  
colnames(dist.mat) <- (row.names(dist.mat))

然后我得到一个错误:data.frame(dist.mat,row.names = Names [,1])中的错误:提供的行名长度错误

不确定如何解决它。我读到此:'row.names'长度无效,但我无法使用Sample $或as.character修复错误

我正在使用:lsa_0.73,SnowballC_0.5.1,tm_0.5-10

这是一个实际示例:Product Desc文件:

  • 这杯可以用来喝威士忌
  • 这是不锈钢玻璃
  • 这是一朵红玫瑰

产品标题文件:

  • 威士忌酒杯
  • 玻璃
  • 玫瑰

输出范例

如果有人可以帮忙会很棒

ya

dist向量的距离矩阵(类别)显示为比向量长度小的三角形矩阵一行和一列。

library(stringdist)

desc <- c("This glass can be used to drink whiskey",
   "This is a stainless steel glass",
   "This is a red rose")

Names <- c("Whiskeyglass", "glass", "rose")

dist.mat1 <- stringdistmatrix(desc)
dist.mat1
#    1  2
# 2 27   
# 3 24 18

但是,dist对象没有尺寸,因此无法为它分配行名和列名。

dim(dist.mat1)
# NULL

尝试命名dist对象的行和列会导致错误。

row.names(dist.mat1) <- colnames(dist.mat1) <- Names

as.data.frame.default(x [[i]],可选= TRUE)中的错误:无法将类““ dist”“强制转换为data.frame

为了获得您期望的结果,dist首先需要将一个对象转换为matrix沿对角线将零相加,因此也将行和列相加。

if(class(dist.mat1) == "dist"){
    dist.mat2 <- as.matrix(dist.mat1)
    row.names(dist.mat2) <- colnames(dist.mat2) <- Names
} else {
    dist.mat2 <- dist.mat1
    row.names(dist.mat2) <- colnames(dist.mat2) <- Names
}

dist.mat2
#              Whiskeyglass glass rose
# Whiskeyglass            0    27   24
# glass                  27     0   18
# rose                   24    18    0

如果您的dist.mat外观dist.mat1如上,但其类别为matrix,则您需要选择哪些名称所属。

row.names(dist.mat) <- Names[-1]             # removing the first name for rows
colnames(dist.mat) <- Names[-length(Names)]  # removing the last name for columns

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

提供的行名称在R中的长度错误

来自分类Dev

R中的数据准备:n长度的行到堆叠的列保留名称

来自分类Dev

R中的“替换长度为零”错误

来自分类Dev

LLDB 为提供的函数名称显示错误的行

来自分类Dev

如何修复 SQL Developer Data Modeller 中的“错误:FK 名称长度超过最大允许长度(30)”

来自分类Dev

如何根据R中的特定长度设置名称

来自分类Dev

字符串的长度提供了错误的信息

来自分类Dev

R中的while循环给出“参数长度为零”错误

来自分类Dev

为什么R中的rle返回错误的长度?

来自分类Dev

R中的Hardstuck错误:可变长度不同

来自分类Dev

R中的if语句。错误参数的长度为零

来自分类Dev

当数组的长度小于提供的数组时,在Excel中处理“小”函数的错误

来自分类Dev

用R删除列表中的空零长度行

来自分类Dev

写入文件中R中长度不同的行

来自分类Dev

以R中的长度为条件的行成员总和

来自分类Dev

基于R中的数据帧名称合并存储在不同长度列表中的数据帧

来自分类Dev

如何在R中为轴参数指定标签长度。我的标签名称被截断

来自分类Dev

NSIndexPath?在Swift中没有成员名称“行”错误

来自分类Dev

名称错误(ret2)<-rowns:“名称”属性[2000]的长度必须与向量[1605]的长度相同

来自分类Dev

Rsa加密解密中的错误长度错误

来自分类Dev

“mean.default(X[[i]], ...) 中的错误:'trim' 必须是长度为 1 的数字”R 中的消息

来自分类Dev

使矩阵关于R中的行和列名称对称

来自分类Dev

使矩阵关于R中的行和列名称对称

来自分类Dev

R在行名称唯一的矩阵中添加额外的行

来自分类Dev

将行名称设置为R中的多个矩阵

来自分类Dev

从 R 中的另一列复制行名称

来自分类Dev

R 中的 Kruskal-wallis 测试给出错误:模型.frame.default 中的错误:变量长度不同

来自分类Dev

计算R中数据帧中不同长度的列的行

来自分类Dev

比较R中不同长度的数据帧,并在不同的行中添加零

Related 相关文章

  1. 1

    提供的行名称在R中的长度错误

  2. 2

    R中的数据准备:n长度的行到堆叠的列保留名称

  3. 3

    R中的“替换长度为零”错误

  4. 4

    LLDB 为提供的函数名称显示错误的行

  5. 5

    如何修复 SQL Developer Data Modeller 中的“错误:FK 名称长度超过最大允许长度(30)”

  6. 6

    如何根据R中的特定长度设置名称

  7. 7

    字符串的长度提供了错误的信息

  8. 8

    R中的while循环给出“参数长度为零”错误

  9. 9

    为什么R中的rle返回错误的长度?

  10. 10

    R中的Hardstuck错误:可变长度不同

  11. 11

    R中的if语句。错误参数的长度为零

  12. 12

    当数组的长度小于提供的数组时,在Excel中处理“小”函数的错误

  13. 13

    用R删除列表中的空零长度行

  14. 14

    写入文件中R中长度不同的行

  15. 15

    以R中的长度为条件的行成员总和

  16. 16

    基于R中的数据帧名称合并存储在不同长度列表中的数据帧

  17. 17

    如何在R中为轴参数指定标签长度。我的标签名称被截断

  18. 18

    NSIndexPath?在Swift中没有成员名称“行”错误

  19. 19

    名称错误(ret2)<-rowns:“名称”属性[2000]的长度必须与向量[1605]的长度相同

  20. 20

    Rsa加密解密中的错误长度错误

  21. 21

    “mean.default(X[[i]], ...) 中的错误:'trim' 必须是长度为 1 的数字”R 中的消息

  22. 22

    使矩阵关于R中的行和列名称对称

  23. 23

    使矩阵关于R中的行和列名称对称

  24. 24

    R在行名称唯一的矩阵中添加额外的行

  25. 25

    将行名称设置为R中的多个矩阵

  26. 26

    从 R 中的另一列复制行名称

  27. 27

    R 中的 Kruskal-wallis 测试给出错误:模型.frame.default 中的错误:变量长度不同

  28. 28

    计算R中数据帧中不同长度的列的行

  29. 29

    比较R中不同长度的数据帧,并在不同的行中添加零

热门标签

归档