0
這是一個非常基本的問題,我可能沒有看到的東西很明顯,但我現在仍堅持這一問題:搜索中的R列表中的一個整數的出現次數
在R,I生成的列表整數,通過sample()
函數製作而成。然後想要找到確切的模式。
應該是顯而易見的,但grep
執行以下操作:
1)
grep('03230', hugeListofNumbers)
>integer(0)
2)
pattern<-toString(03230)
x<-toString(hugeListofNumbers)
grep(pattern, x)
>[1] 1
3),並使用matchPattern
從Biostrings
套餐:
matchPattern(pattern, x)
start end width
[1] 5146 5158 13 [0, 3, 2, 3, 2]
....
沒有結果幫助我找到模式的發生。雖然使用matchPattern最後一個看起來不錯,但它發現一些奇怪的13個字符長的字符串,不以任何方式5個字符長的模式相匹配...
什麼我沒有看到嗎?我如何才能在shell中執行正常的grep搜索?
編輯: 要生成我需要我用的屬性列表:
hugeListofNumbers<-sample(c(0,1,2,3), 10^5, replace=TRUE, prob=NULL)
pattern<-sample(c(0,1,2,3), 5 , replace=TRUE, prob=NULL)
你可以添加一些代碼來生成數字的具體名單爲我們幫忙的嗎?像HugeListOfNumbers < - c(1,2,23452435,245)? – waternova 2015-04-04 22:40:37
我認爲當一個R整數被一個正則表達式函數強制轉換爲一個字符向量時,將永遠不會有一個前導'0'數字。注意你的模式值是''「3230」',而不是「'03230」'我的近距離投票是因爲我認爲這是同構的印刷錯誤。 – 2015-04-04 23:07:25
@BondedDust我知道模式值與實際模式不同。這不是一個印刷錯誤,但我正在尋找實際的模式,而不管它的數字意義。可以用字母執行相同的任務。我使用整數的原因是用於需要數字操作的以下步驟。這就是爲什麼我試圖將其轉換爲時間字符串進行搜索。 – hirschme 2015-04-05 09:49:49