2017-06-15 23 views
0

私はこのフォーラムを初めて利用しています。私は私の問題への答えを見つけるためにフォーラムで研究しましたが、まだ適切な解決策を見つけていません。
私は線形回帰と散布図を使って2つの時系列を比較しようとしています。時系列は2分ごとに測定する必要がありますが、現実には時々、データロガーは値を書き込まない場合があります。時には3分後にのみ値が書き込まれます。だから、私は同じタイムスタンプを持つすべてのペア(x​​、y)を見つけようとしていて、残りは取り除いています。異なる長さの時系列を持つ散布図

   Time   x 
1 2016-08-15 09:58:00 2.7421 
2 2016-08-15 10:02:00 2.7731 
3 2016-08-15 10:04:00 2.7603 
4 2016-08-15 10:06:00 2.7426 
5 2016-08-15 10:08:00 2.7481 
6 2016-08-15 10:10:00 2.7294 
7 2016-08-15 10:12:00 2.7428 
8 2016-08-15 10:15:00 2.7371 
9 2016-08-15 10:16:00 2.7677 
10 2016-08-15 10:18:00 2.7449 



      Time   y 
1 2016-08-15 10:00:00 1.3656 
2 2016-08-15 10:02:00 1.3680 
3 2016-08-15 10:04:00 1.3785 
4 2016-08-15 10:06:00 1.3819 
5 2016-08-15 10:08:00 1.3720 
6 2016-08-15 10:10:00 1.3702 
7 2016-08-15 10:12:00 1.3550 
8 2016-08-15 10:14:00 1.3696 
9 2016-08-15 10:16:00 1.3603 
10 2016-08-15 10:18:00 1.3813 

この例では、1と8の値は削除する必要があります。散布図では

答えて

0

ndf = merge(df1, df2, by = "Time", all = FALSE) 

p = ggplot(ndf, aes(x, y)) + 
    geom_point(colour = "red", size = 2) 

p 
+0

ありがとうございました!これは私のために働いた。 POSIXlt形式ではなく、日付のPOSIXct形式でのみ動作することに言及する価値はあります。 – Janite

0
> library(lubridate) 

Attaching package: ‘lubridate’ 

The following object is masked from ‘package:base’: 

    date 


> df1$Time=mdy_hm(paste(df1$Time)) 
> df1 
        Time  x 
1 2016-08-15 09:58:00 2.7421 
2 2016-08-15 10:02:00 2.7731 
3 2016-08-15 10:04:00 2.7603 
4 2016-08-15 10:06:00 2.7426 
5 2016-08-15 10:08:00 2.7481 
6 2016-08-15 10:10:00 2.7294 
7 2016-08-15 10:12:00 2.7428 
8 2016-08-15 10:15:00 2.7371 
9 2016-08-15 10:16:00 2.7677 
10 2016-08-15 10:18:00 2.7449 

> df2$Time=mdy_hm(paste(df2$Time)) 
> df2 
        Time  y 
1 2016-08-15 10:00:00 1.3656 
2 2016-08-15 10:02:00 1.3680 
3 2016-08-15 10:04:00 1.3785 
4 2016-08-15 10:06:00 1.3819 
5 2016-08-15 10:08:00 1.3720 
6 2016-08-15 10:10:00 1.3702 
7 2016-08-15 10:12:00 1.3550 
8 2016-08-15 10:14:00 1.3696 
9 2016-08-15 10:16:00 1.3603 
10 2016-08-15 10:18:00 1.3813 


> merge(df1,df2,by="Time") 
        Time  x  y 
    1 2016-08-15 10:02:00 2.7731 1.3680 
    2 2016-08-15 10:04:00 2.7603 1.3785 
    3 2016-08-15 10:06:00 2.7426 1.3819 
    4 2016-08-15 10:08:00 2.7481 1.3720 
    5 2016-08-15 10:10:00 2.7294 1.3702 
    6 2016-08-15 10:12:00 2.7428 1.3550 
    7 2016-08-15 10:16:00 2.7677 1.3603 
    8 2016-08-15 10:18:00 2.7449 1.3813