2011-09-30 80 views
0

我會盡量不要模糊。下面的數據集由一個設備的功率測量值組成,我必須繪製一張圖表,顯示Time列期間功率(瓦特)的平均波動。我必須在R中完成這個工作,但我真的不知道該怎麼做,或者我應該怎麼做,因爲我是R的新手。任何幫助都將非常感謝!R中的波動起伏

Store No.,Date,Time,Watt 

33,2011/09/26,09:11:01,0.0599E+03 

34,2011/09/26,09:11:02,0.0597E+03 

35,2011/09/26,09:11:03,0.0598E+03 

36,2011/09/26,09:11:04,0.0596E+03 

37,2011/09/26,09:11:05,0.0593E+03 

38,2011/09/26,09:11:06,0.0595E+03 

39,2011/09/26,09:11:07,0.0595E+03 

40,2011/09/26,09:11:08,0.0595E+03 

41,2011/09/26,09:11:09,0.0591E+03 
+0

平均值將是一個單一的數字,所以這將是一個非常無聊的情節。所以我認爲你想要不同的東西,或者我誤解了,或者兩者都有。在給出上面的輸入的情況下,可能會顯示想要繪製的數據(數字)的示例? –

+0

這樣的東西,http://www.sr.bham.ac.uk/~ajrs/R/gallery/midday_weather_profiles.png 在圖片中,他們已經繪製了原始數據,並且單個像素代表着波動(或我誤解了該行的含義:)) –

+0

啊 - 好的,這就是所謂的_moving_ average,或者更一般地說,是一個低通濾波器。我也是一個新手,所以除了幫助解決問題之外,我無法幫助! –

回答

0

在包rollapply:動物園將返回的移動平均(或運動的任何函數)。你可以使用點繪圖,然後添加移動平均線:

dat$D.time <- as.POSIXct(paste(dat$Date, dat$Time)) 
require(zoo) 
?rollapply 
length(rollapply(dat$Watt,3, mean)) 
plot(dat$D.time, dat$Watt) 
lines(dat$D.time[3:9], rollapply(dat$Watt,3, mean)) 
+0

它給了我一個錯誤,當我執行該行語句。錯誤是; 「xy.coords(x,y)中的錯誤:'x'和'y'長度不同」 –

+0

經過調整後,它終於奏效了!因爲我在更大的集合上應用代碼,所以必須更改行語句中的值!謝謝'Dwin'! –