使用R中的两个数据集创建散点图

时间:2017-01-31 21:54:13

标签: r ggplot2 scatter-plot

初学者。我希望使用我使用group by创建的两个数据集创建一个散点图:

menthlth_perc_bystate <- brfss2013 %>% 
  group_by(state) %>%
  summarise(percent_instability = sum(menthlth > 15, na.rm = TRUE) / n()) %>%
  arrange(desc(percent_instability))

exercise_perc_bystate <- brfss2013 %>%
  group_by(state) %>%
  summarise(perc_exercise = sum(exeroft1 > 30, na.rm = TRUE) / n()) %>%
  arrange(desc(perc_exercise))

我想将这些合并到一个数据集total_data中。两人都有54个障碍物。

total_data <- merge(menthlth_perc_bystate,exercise_perc_bystate,by="state")

据推测,散点图将在一个轴上显示状态的百分比不稳定性(menthlth_perc_bystate),在另一个轴上显示状态百分比运动(exercise_perc_by_state)。我使用ggplot尝试了这个但是出了错误:

ggplot(total_data, aes(x = total_data$menthlth_perc_bystate, y = total_data$exercise_perc_bystate)) + geom_point()

错误:美学必须是长度1或与数据(54)相同:x,y

1 个答案:

答案 0 :(得分:0)

在ggplot的aes()函数中,您放置了为数据参数提供的数据框中的裸列名称。所以在你的例子中它将是:

ggplot(total_data , 
       aes(x = percent_instability,
           y = perc_exercise)) + 
geom_point()

虽然我不确定你的例子中total_ex是什么。 此外,使用total_ex$menthlth_perc_bystate表示您正在数据框menthlth_perc_bystate中查找名为total_ex的列。该列不存在,它是不同数据框的名称。合并两个数据框后,结果数据框中的列将为statepercent_instabilityperc_exercise