[討論] 簡單的計算 想不到暴力解之外的方法
問題很簡單,分兩個部分
一串 0 1 數列
大致長得像是 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0
簡單來說 1 代表 A 事件發生 0 代表沒有 然後這是每個時間點的紀錄
所以 A 一旦發生不會只發生 1 個點就結束 一定是一串
我想要做的是創一個新的數列 第 N 次 一串 1 變成一串 N
以上面的例子來說就是後面 4 個 1 都變成 2
我只想到 for loop + if 硬幹的方法
但實際資料很長 又有好多受試者 感覺很耗時間
第二個部份是
如果兩串 1 之前的 0 少於 200 個 需要把這兩串 1 合併 (中間的 0 都當作 1)
我一樣只想到硬解
我猜是小弟我不夠熟 Matlab 平常都在用一些自己習慣的 function
沒有做過類似的事情 但應該都有速解
希望高手可以幫個忙
甚至提點一下就好
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 24.208.230.65
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1441423246.A.93D.html
→
09/05 11:20, , 1F
09/05 11:20, 1F
→
09/05 11:25, , 2F
09/05 11:25, 2F
→
09/05 11:26, , 3F
09/05 11:26, 3F
→
09/06 00:10, , 4F
09/06 00:10, 4F
→
09/06 00:12, , 5F
09/06 00:12, 5F
推
09/06 00:49, , 6F
09/06 00:49, 6F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):