COCO研究院

 找回密碼
 註冊
搜索
查看: 1897|回復: 2

關於部份資料不讀入之語法請教

[複製鏈接]
發表於 16-5-18 18:12 | 顯示全部樓層 |閱讀模式
大家好

小弟今日主要問題  是 小弟有一時間序列資料

這時間序列 會隨著時間越來越多

資料大概就是有 大於0,小於0 還有等於0

小弟想計算這個值的平均數 但我又不想計算屬於0的

所以我原本作法是

假設我的時間序列資料是 dear(0),sdear(0);

平均數是mdear(0);

所以我寫法是

if dear<>0 then  sdear=dear;

然後 mdear=average(sdear,period)

但把相關資料print出來時

會發現  因為某些區間 dear=0 所以 而  sdear沒有新的值出現

所以  他會有某些地方是出現一樣的值

比如



  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
  63.87  65.02  64.33
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
104.28  92.16  55.78
102.80 105.02 103.69
102.80 105.02 103.69
102.80 105.02 103.69
102.80 105.02 103.69
102.80 105.02 103.69

我原本是要抓 (63.87+104.28+102.80)/3

所以有語法可以 只抓

  63.87   104.28   102.80

只要是一樣的我都忽略等待嗎?

謝謝

Max

發表於 16-5-18 20:28 | 顯示全部樓層
你如果去追 average 程式碼, 他是用 for loop 方式去得總數, 再除次數
其中 每次的數字 是用 [n] 時間序列去得到

既然如此, 你也可以自己寫一個不確定次數的 for loop 或 while
跳過 data=0 , 等到次數到就可以離開
 樓主| 發表於 16-5-20 17:14 | 顯示全部樓層
謝謝  pcking2008哥的指點

小弟正研究中  謝謝
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-25 17:34

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |