我对R很新,但确实试图找到我的问题的答案,但没有成功。
我有两个数据框“Brexit_final”和“Brexit_Google_Trends”。两个数据框都有一个“日期”列但是! Brexit_Final框架的日期比另一个框架少。我想创建一组新数据,其中只保留两个帧都有日期的行。
在此过程中我还想删除很多列。
Brexit_Final
Date Remain Leave Undecided Total_Difference
2016-06-18 42 44 13 7.5
2016-06-20 47.25 46 5.25 15
2016-06-23 55 45 0 14
Brexit_Google_Trends
Date EU Referendum Brexit Difference
2016-06-18 44 100 65 22
2016-06-19 23 100 62 55
2016-06-20 28 40 36 24
2016-06-21 37 55 43 36
2016-06-22 7 10 55 44
2016-06-23 67 100 62 103
Dream_Frame
Date Total_Difference Difference
2016-06-18 7.5 22
2016-06-20 15 24
2016-06-23 14 103
答案 0 :(得分:2)
You can use an inner_join
from the dplyr
package.
inner_join(Brexit_Final, Brexit_Google_Trends, by = "Date") %>% select(Total_Difference, Difference)
答案 1 :(得分:1)
From this canonical question, we get:
Dream_Frame <- merge(Brexit_Final, Brexit_Google_Trends, by = "Date")
Dream_Frame <- Dream_Frame[,c("Date", "Total_Difference", "Difference")
Or, to do it in one step,
Dream_Frame <- merge(Brexit_Final[, c("Date", "Total_Difference")],
Brexit_Google_Trends[, c("Date", "Difference")],
by = "Date")
答案 2 :(得分:1)
Brexit_Final = Brexit_Final[,c("Date","Total_Difference")]
Brexit_Google_Trends = Brexit_Google_Trends[,c("Date","Difference")]
Dream = merge(Brexit_Final, Brexit_Google_Trends,by="Date")
答案 3 :(得分:0)
使用&#34;学生&#34;的建议
inner_join(Brexit_Final,Brexit_Google_Trends,by =&#34; Date&#34;)%&gt;%select(Date,Total_Difference,Difference)
稍微添加&#34;日期&#34;作为一个保持的列。 如果有其他人在努力解决这个问题。我的数据框中的一个问题是&#34;差异&#34;和&#34; Total_Difference&#34;不是数字格式,而是我附加到其他数据框架的数据框架。所以我用过:
Brexit_final $ Total_Difference&lt; - as.numeric(Brexit_final $ Total_Difference [[1]])
同样的&#34;差异&#34;首先使它们成为数字。然后所有提供的解决方案都有效
感谢您的帮助@all