我有一个大型数据集,我想删除字符,从字符串末尾的e,v,i开始。我的数据集看起来像这样
P*01:01:05e1 P*01:01:05e2 P*01:01:05e3 P*01:01:05e10 P*02:02v1 P*02:02v2 P*02:01:03v2 P*05:01:01i1 P*05:01:01i8
我希望它是P*01:01:05
,P*02:02
,P*02:01:03
,P*05:01:01
。
我首先尝试删除' e'字母使用
> xdata$gene <-gsub("e*", "", xdata$gene, perl = TRUE)
但是我收到此错误消息
Error in `$<-.data.frame`(`*tmp*`, "gene", value = character(0)) :
replacement has 0 rows, data has 58
看来我无法取代&#39; e&#39;没有。有什么建议吗?
数据
xdata <- read.table(header = TRUE, stringsAsFactors = FALSE,
text = "gene
P*01:01:05e1
P*01:01:05e2
P*01:01:05e3
P*01:01:05e10
P*02:02v1
P*02:02v2
P*02:01:03v2
P*05:01:01i1
P*05:01:01i8")