【发布时间】:2018-12-19 20:05:13
【问题描述】:
我想创建一个tibble,其中混合了重复和不重复的变量测量以及测量日期;
- 3 个变量(
var1、var2、var3)在 4 月、5 月、6 月不定期测量 16 次 - 7 月测量一次的 4 个变量(
var4、var5、var6、var7) - 2 个变量(
var8、var9)也在 7 月测量了一次
要创建tibble,我可以编写包含可变日期和测量值的每种组合的向量,但我想知道是否有一种方法可以更有效地做到这一点,因为 3 个变量被重复取了 16 次。我已经用变量、日期和测量值编写了这段代码,但我被困在那里。有什么建议吗?
library (tidyverse)
variables <- c(var1, var2, var3, var4, var5, var6, var7, var8, var9)
mydates <- c(2013-04-15,
2013-04-16,
2013-04-17,
2013-04-22,
2013-04-25,
2013-04-29,
2013-05-02,
2013-05-06,
2013-05-09,
2013-05-13,
2013-05-16,
2013-05-20,
2013-05-23,
2013-05-27,
2013-05-30,
2013-06-03,
2013-07-04,
2013-07-08)
measurements <- c(3.2, 4.6, 1.1, 3.0, 3.6, 1.6, 1.4, 1.4, 4.8, 3.5, 4.0,
2.7, 1.4, 2.9, 2.4, 3.6, 3.7, 4.3, 3.6, 3.5, 4.7, 1.8, 3.5, 2.4, 2.1, 1.2,
2.3, 3.9, 1.6, 2.8, 5.0, 2.4, 2.2, 2.9, 1.8, 1.7, 4.4, 3.9, 4.4, 2.6, 1.7,
4.2, 3.4, 4.4, 4.7, 5.0, 3.0, 3.7, 2.1, 2.9, 4.5, 1.5, 2.2, 2.9)
tibble (variables, mydates, measurements)
我想要一个看起来像这样的小标题,我的前 3 个变量每个重复 16 次,我的 16 个第一次约会每个重复 3 次,并且测量结果:
variables mydates measurements
var1 2013-04-15 3.2
var2 2013-04-15 4.6
var3 2013-04-15 1.1
var1 2013-04-16 3.0
var2 2013-04-16 3.6
var3 2013-04-16 1.6
var1 2013-04-17 1.4
var2 2013-04-17 1.4
var3 2013-04-17 4.8
... ... ... # measurements for var1, var2, var3 were repeatedly taken during the 16 first dates in the vector mydates.
var4 2013-07-04 2.1
var5 2013-07-04 2.9
var6 2013-07-04 4.5
var7 2013-07-04 1.5
var8 2013-07-08 2.2
var9 2013-07-08 2.9
【问题讨论】:
-
但是
measurements的长度和mydates不同。你能扩展你想要的输出吗? -
是什么让你觉得“tidyverse 一定有办法”?你是从什么创建这个的?一个文本文件?电子表格?来自随机数?
-
@patL,我已经扩展了所需的输出 tibble 并添加了评论,所以希望它更清楚。
measurements的长度与mydates不同,因为某些测量是在同一日期进行的。 @Spacedman,我从 excel 电子表格中获得了这些数据。数据分散在几个列标题和电子表格中,所以我想创建这个 tibble 来整理它。