我的任务是从字符串中拆分并提取部分,直到出现第四个下划线。我现在正在使用 R,但我是编程之类的初学者。
输入如下所示:
6_10_36_0_1
6_10_38_16_15
6_100_76_16_18.1
我需要的结果如下所示:
6_10_36_0
6_10_38_16
6_100_76_16
我的想法如下:
substr(data$x, 0, XXX)
虽然 XXX 定义了第四个下划线之前的位置,但可能使用 grep 或 strsplit?
抱歉,如果我问了一个愚蠢且易于回答的问题。但是,我没有找到适合已经发布的答案。
编辑:
> bestand$ID<-sub("(_[0-9.]+$)", "", bestand$x)
Fehler in `$<-.data.frame`(`*tmp*`, "ID", value = character(0)) :
replacement has 0 rows, data has 36513
> gsub("(_[0-9.]+$)", "", "6_100_63_8_2")
[1] "6_100_63_8"
>
显然该命令有效,但它不适用于矩阵..