1
我有以下的數據幀如何在R中有一串字符串?
patientID<-c(1,2,3,4,5,6,7,8)
age<-c(25,30,28,52,45,26,36,32)
s<-c("m","w","w","m","w","w","m","w")
diabetes<-c("T1","T2","T2","T3","T1","T2","T1","T1")
status<-c("poor","ïmproved","poor","ïmproved","Excellent","poor","ïmproved","Excellent")
patientenData<-data.frame(patientID,age,diabetes,status,s)
,並希望如下
filter<-c(s=="m","age>28","OR",s=="w","age>38")
filter<-paste(filter,collapse="&")
filter<-gsub("&OR&","|",filter)
patientenData<-patientenData[with(patientenData,eval(parse(text=filter))),]
的問題是,要能夠執行的最後一部分,我需要一種「串的串寫一個過濾器」。我的意思是
filter<-c("s=="m"","age>28","OR","s=="w"","age>38")
因爲parse
和eval
。但這並不容易。我也試過toString
和is.character
或as.character
,但沒有成功。 感謝您的每一個提示。
您可以使用混合引號的轉義字符在引號中實現引號。例如:''和Bob向我說'hello'。「' – sdgfsdh
'filter <-c(」s =='m'「,」age> 28「,」OR「,」s =='w'「 ,「年齡> 38」)有效。但我也會考慮在沒有這種文本處理方法的情況下做這個過濾器 –
wau非常感謝! – maniA