2014-07-14 181 views
0

比方說,我有,我有一個載體,稱作一個問題,鹼定義爲[R計數頻率有效

bases <- c(1:100000) 

我創建一個名爲實例隨機其他向量,隨機定義爲

instances <- c(12, 367, 442, 551, 1882, 2556, 13222, 13772, 18999, 26000, 29004, 83027) 

我怎麼能怎麼算的實例中的元素很多落在每1內:基地矢量1000窗口?

例如,爲了澄清我的意思是,1:1000窗口應給予4的頻率,對於各實例的元件(12,367,442,和551)。窗口84001:85000應該有一個零的頻率。

我打算具有大得多的鹼基矢量(但連續從1:N),並且還大得多的實例載體,其中所有的實例值是小於n。也請保持窗口大小可以修改。

誰能提供有效的解決方案?

謝謝。請原諒我的無知,因爲我是R新手,仍然在學習R編程作爲一名高中學生。

+1

看看'findInterval'和'cut'。 – A5C1D2H2I1M1N2O1R2T1

+1

...可能是'table'或'tabulate'。 – joran

回答

1

基本上你正在尋找一個直方圖。使用hist函數。

bases <- c(1:100000) 
instances <- c(12, 367, 442, 551, 1882, 2556, 13222, 13772, 
       18999, 26000, 29004, 83027) 

# plot = 0 prevents plotting 
# breaks are the values at which we want to split our interval 
h <- hist(instances, breaks = seq(0, max(bases), 1000), plot=0) 

現在h$counts將包含每個bin中的計數。

+0

我認爲這是做到這一點最有效和最明智的方式,因爲我打算以後再繪製直方圖:) – user41912