2013-04-29 85 views
2

我想寫一個腳本讓R可用於「所有人」這個特殊的分析主題。是否有可能創建警告?在R中創建警告

time,value 
2012-01-01,5 
2012-01-02,0 
2012-01-03,0 
2012-01-04,0 
2012-01-05,3 

例如,如果值是至少3次0(事後 - 時間settet週期內更好 - 3天)給予警告 - 和命名日期。如果我合併條件,也許可以創建類似報告的內容。

一般來說:通過read.csv讀取測量數據,然後通過as.POSIXct - xts/zoo設置Date。我希望「用戶」在價值變化等情況下得到清晰的信息;如果它們長時間爲0等。 第二步是發送電子郵件 - 稍後可能在服務器上運行。

其他問題: 我現在在xts中有df - 是否可以檢查該值是否大於閾值?它不工作,因爲它不是一個原子向量。

謝謝

+0

附加問題:是否可以創建彈出窗口?或通過郵件發送消息? – 2013-04-29 15:58:48

+1

有一個'sendmailR'包。 – 2013-04-29 16:07:20

+0

你能解釋一下你在做什麼?誰在使用這個腳本,你想在哪裏發送消息?數據來自哪裏? – A5C1D2H2I1M1N2O1R2T1 2013-04-29 16:08:29

回答

6

試試這個。

x <- read.table(text = "time,value 
2012-01-01,5 
2012-01-02,0 
2012-01-03,0 
2012-01-04,0 
2012-01-05,3", header = TRUE, sep = ",") 

if(any(rle(x$value)$lengths >= 3)) warning("I noticed some dates have value 0 at least three times.") 

Warning message: 
I noticed some dates have value 0 at least three times. 

我要把它留給你的訓練演習,以paste一條警告消息,也給你的日期(S)。

+0

謝謝 - 這確實檢查x中是否有任何值超過三次。也許還有機會獲得日期或至少是錯誤的線 - 如果數據更大,這將是非常有用的。 – 2013-04-29 15:10:59

+0

@HerrStudent當然,'rle'爲您提供推斷位置/日期所需的全部信息。 – 2013-04-30 06:01:26