正则表达式 – 超过1个单词分割字符
发布时间:2020-12-14 06:04:20 所属栏目:百科 来源:网络整理
导读:我有以下特征: endvotes - "Yes106No85EH2NT6ES0P1" 我想得到一个像这样的data.framelook Yes No EH NT ES P 106 85 2 6 0 1 我知道如何拆分其中的每一个,例如: yes - unlist(str_split(end_votes,"No"))[1]yes - as.integer(unlist(str_split(yes,"Yes"
我有以下特征:
endvotes <- "Yes106No85EH2NT6ES0P1" 我想得到一个像这样的data.framelook Yes No EH NT ES P 106 85 2 6 0 1 我知道如何拆分其中的每一个,例如: yes <- unlist(str_split(end_votes,"No"))[1] yes <- as.integer(unlist(str_split(yes,"Yes"))[2]) yes [1] 106 我猜一种可能性是按位置分割,但数字(一位,两位或三位数)并不总是相同,因此我想分开答案(是,不,等等).当然,我可以为每个答案(如上所述)做到这一点,但我确信有更优雅的方式. 解决方法endvotes <- "Yes106No85EH2NT6ES0P1" names <- strsplit(endvotes,"[[:digit:]]+")[[1]] numbers <- strsplit(endvotes,"[[:alpha:]]+")[[1]][-1] setNames(as.data.frame(t(as.numeric(numbers))),names) # Yes No EH NT ES P #1 106 85 2 6 0 1 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |