如何 select R 中的特定值?

How to select particular values in R?

我需要修改这些代码以便一次只考虑一个人:

plot(breaths$breathing~as.factor(breaths$event))
plot(breaths$breathing~as.factor(breaths$event),
     names=c("control","grooming"),
     xlab="event", ylab="breathing rate (b/m)", pch=19)

在我的数据集中,有以下列:事件、呼吸和 ID。事件要么是修饰要么是控制。每个人 (id) 都属于两个类别(修饰、控制)。 我只想为每个人绘制一个图表。您认为我应该添加哪些代码? 提前致谢!

示例数据:

set.seed(42)
dat <- data.frame(event = sample(c("grooming", "control"), 100, replace=TRUE), id = sample(c("Aa", "Bb", "Cc"), 100, replace=TRUE), breathing = runif(100))
head(dat)
#      event id  breathing
# 1 grooming Bb 0.35110692
# 2 grooming Aa 0.15902238
# 3 grooming Bb 0.30409800
# 4 grooming Aa 0.01754832
# 5  control Bb 0.99655268
# 6  control Cc 0.80439331

vis的一种方法:

library(ggplot2)
ggplot(dat, aes(breathing)) +
  geom_density(aes(color = event)) +
  facet_wrap(id ~ .)

或者如果您更喜欢积分:

ggplot(dat, aes(event, breathing)) +
  geom_point(aes(color = event)) +
  facet_wrap(id ~ .)

此处的关键组件是 facet_wrap,它将数据拆分为 id


侧重点:

  • 在使用~公式方法时,一般优先使用data=而不是在每个变量中包含breaths$;虽然不是必需的,但它确实会产生轻微的美学差异(轴名称)。 (我还发现代码更易于阅读。)

    par(mfrow = c(1,2))
    plot(mtcars$disp ~ mtcars$mpg)
    plot(disp ~ mpg, data = mtcars)
    

  • 不清楚这里的names=是什么;缺少示例数据,我收到关于 "names" is not a graphical parameter 的警告。如果您确定您 没有 收到该警告(重复一次 plot 调用),那么您的数据不仅仅是 data.frame.