先使presidential <- subset(presidential, start > economics$date[1])
时间: 2024-03-31 19:32:27 浏览: 19
好的,您可以使用以下代码将`presidential`数据集中的日期限制为大于`economics`数据集中的第一个日期:
```r
presidential <- subset(presidential, start > economics$date[1])
```
这将删除`presidential`数据集中任何早于`economics`数据集中第一个日期的记录。现在,两个数据集中的日期应该是对齐的,您可以使用前面提供的代码将它们合并并绘制图表。
相关问题
用r语言使用economics和presidential数据集绘制美国总统执政期间失业人口数
好的,这里是一个用 `economics` 和 `presidential` 数据集绘制美国总统执政期间失业人口数的 R 代码示例:
```R
library(ggplot2)
library(dplyr)
# 读取数据集
data("economics")
data("presidential")
# 合并数据集
unemployment <- merge(economics, presidential, by = "date") %>%
# 选取需要的列
select(date, unemploy, name) %>%
# 重命名列
rename(president = name) %>%
# 取得总统任期开始和结束的日期
group_by(president) %>%
mutate(start_date = min(date), end_date = max(date)) %>%
ungroup()
# 绘制图表
ggplot(unemployment, aes(x = date, y = unemploy, group = president, color = president)) +
geom_line() +
scale_x_date(date_labels = "%Y", date_breaks = "5 years") +
labs(title = "美国总统执政期间失业人口数", x = "年份", y = "失业人数") +
facet_wrap(~president, ncol = 3, scales = "free_x")
```
这段代码会绘制一张折线图,其中每一条折线代表一个总统的执政期间内的失业人口数变化情况。
by必须指定唯一有效的列
非常抱歉,您是正确的。在这种情况下,我们需要检查两个数据集中的“date”列是否具有唯一值。如果不是唯一的,则需要先对数据进行清理。
以下是一些可能的代码,以确保在合并数据集之前,每个日期只出现一次:
```r
# 检查是否有重复的日期
sum(duplicated(economics$date)) # 如果返回大于0的数字,则有重复日期
# 删除重复日期
economics <- economics[!duplicated(economics$date),]
# 合并数据集
unemp_data <- merge(economics, presidential, by="date")
```
这将删除任何重复的日期,并基于“date”变量合并两个数据集。现在我们有了一个包含每个总统执政期间失业人数的数据集,可以使用上面提供的代码绘制图表。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)