2016-04-24 14 views
0

私は2つのデータセットをそれぞれ別のデータフレームに持っています。これは、Excelスプレッドシートから派生したものと、生データファイルの自動反復によるものです。 両方のデータフレームに共通するものが1つあります。最初の列には、その中の観測の均一なタイムスタンプ情報が入っています。 df1には、湿度と温度に関するデータ(変数:タイムスタンプ、ハム、温度)が含まれ、df2には酸素、電力、および時間変数(変数:タイムスタンプ、O2、電力、時間)が含まれます。異なる列の異なる長さのデータフレームを結合するR

理想的には、両方のdf1には、df2にも含まれるすべてのタイムスタンプ付きの観測値が含まれている必要があります。さらに、df1には、清掃する必要のある余分な観察が含まれています。

タイムスタンプごとに、両方のdfのすべての変数値が結合されています(つまり、変数:タイムスタンプ、ハム、テンポ、O2、パワー、時間)。 df1でのみ発生する観測は削除する必要があります。

これを実行するスマートな方法はありますか?

種類は kruemelprinz

答えて

1

についてあなただけのシンプルなleft_joinを探しているように思えます。これは、dplyrによって

left_join(df2, df1) 

とすることができ、df2とdf1がタイムスタンプ列で一致する行のみを返します。 (これはdf1の余分な観測値をすべて削除します)。

ベースRの実装は次のとおりです。

merge(x = df2, y = df1, by = "timestamp", all.x = TRUE) 
+0

これは私が探していたまさにです!本当にありがとう、素敵な一日を! – kruemelprinz

+0

あなたは大歓迎です!答えに満足すれば、答えの横にある緑色のチェックマークをクリックして、正しいものとしてマークすることができます。お力になれて、嬉しいです。 –

+0

絶対に!ヒントをありがとう:) – kruemelprinz

関連する問題