首页 > 解决方案 > 有没有更简单的方法来编写这个排序代码?

问题描述

我有一个包含 196 个字符串的列表,格式为2009/EPS.WCR.PL6.MAIS.0036、2016/EPS.WCR.PL6.NORM.0077等。不同的是年份日期和末尾的四个数字。还有NORM或MAIZE。我想通过这个列表并提取这些信息来创建某种距离矩阵。到目前为止,我编写的代码如下: c(substr(df[i,3], 1, 4),substr(df[1,3], 18, 21),substr(df[i,3], 22, nchar(df[i,4]))), 其中 df 是这些分类变量的列表。

我在列表中循环的地方。有没有一种很好的方法可以根据我提取的信息位来确定这些字符串之间的距离?

先感谢您。

标签: rlistsorting

解决方案


如果您的数据始终具有相同的结构,请尝试:

    data <- c("2009/EPS.WCR.PL6.MAIS.0036", "2016/EPS.WCR.PL6.NORM.0077")
    str(data)
    substr(data, start = 1, stop = 4)
    substr(data, start = 18, stop = 21)
    substr(data, start = 23, stop = 26)

推荐阅读