在r中将具有时间变量的纵向数据从宽格式转换为长格式

自卫队

随着时间的推移,我有多个对象的多次测量的纵向数据。数据采用长格式,包含数百个变量和案例:

Id    Time1   Measurement11  ...   Time2    Measurement21   ...
 1     50.4    23             ...   52.1    25               ...
 2     64.3    30             ...   67.9    35               ...
 3     70.1    20             ...   72.3    29               ...

我想将其转换为宽格式以进行绘图

Id    Time    Measurement1 ...
 1     50.4    23           ...
 1     52.1    25           ...
 2     64.3    30           ...
 2     67.9    35           ...
 3     70.1    20           ...
 4     72.3    29           ...

我检查了关于gather、melt、reshape、reshape2的资源,但似乎它们处理了多个时间列都包含测量值的情况。到目前为止,我还没有找到一种好的方法来转换数据,同时保持对时间和测量的成对依赖。

我目前的解决方案是写一些类似的东西

attatch(data)
temp1<-bind_cols(Time1,Measurement11)
temp2<-bind_cols(Time2,Measurement21)

wide_format_measurement1<-bind_rows(temp1,temp2,...)

它有效,因为只有 5 个时间变量,但似乎效率不高。我可以使用 unite 创建数据对,然后使用 gather,最后使用separate。但这本质上与 bind_cols 方法相同。一定会有更好的办法?

杰森·艾兹卡恩斯

这也应扩展到更多情况(例如 time3、measurement3、time4、measurement4 等),只要它们都以数字结尾。诀窍是首先gather()增加所有非变量列,然后separate()使用精心选择的sep参数。

library(tidyverse)

df %>%
  gather(key, value, -id) %>%
  separate(key, c("var", "num"), sep = "(?=[[:digit:]])") %>%
  spread(var, value) %>%
  arrange(id) %>%
  select(-num)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在SQL中将数据从宽格式转换为长格式

来自分类Dev

如何在R中将数据集从宽格式转换为长格式

来自分类Dev

Swift:如何将String转换为具有时间格式的字符串?

来自分类Dev

当ID变量在列标题中编码时,将数据从宽格式转换为长格式

来自分类Dev

在R中拆分列名称并将数据从宽格式转换为长格式

来自分类Dev

在R中将数据帧从“宽”格式转换为“长”格式

来自分类Dev

如何在R中将范围分割成微小的长部分并将其从宽格式转换为长格式?

来自分类Dev

如何在R中将具有大量行的大文件从长格式转换为宽格式?

来自分类Dev

如何在Python中将csv文件从宽格式转换为长格式

来自分类Dev

在R中将带有计数的宽数据帧转换为长格式

来自分类Dev

当列不代表所有时间点时,R将数据集从宽变长

来自分类Dev

数据从宽格式到长格式,具有多个不同类型的重复列

来自分类Dev

R:覆盖从宽格式到长格式的数据帧

来自分类Dev

如何使用Python将CSV数据从宽格式转换为长数据集

来自分类Dev

如何从数据库中以 HTML 格式显示没有时间的日期格式?

来自分类Dev

长面板中具有时间和id条件的虚拟变量

来自分类Dev

我可以使用哪种转换器将日期转换为YYYY-MM-DD格式,而最终结果中没有时间格式?

来自分类Dev

从具有多个唯一变量的长格式到宽格式转换为R中的其他唯一变量

来自分类Dev

在SQL Server和DataFrame中将宽格式转换为长格式具有大约1000列-优化

来自分类Dev

熊猫中将贸易数据集转换为长格式的最有效方法?

来自分类Dev

在R中将矩阵最快转换为长格式数据帧

来自分类Dev

如何在R中将as_tibble()格式的时间序列数据转换为as_tsibble()格式?

来自分类Dev

当值具有不同格式时如何将变量转换为时间格式

来自分类Dev

具有时间格式的getHours()2016-04-29T19:00:00

来自分类Dev

将具有互不排斥类别的长数据转换为宽格式

来自分类Dev

将现有时间戳列数据从本地时间转换为UTC

来自分类Dev

如何在熊猫中将长数据格式转换为宽数据格式

来自分类Dev

将具有时间单位(ms,s,us)的字符转换为数字

来自分类Dev

将矩阵转换为长格式(R)的数据帧

Related 相关文章

  1. 1

    在SQL中将数据从宽格式转换为长格式

  2. 2

    如何在R中将数据集从宽格式转换为长格式

  3. 3

    Swift:如何将String转换为具有时间格式的字符串?

  4. 4

    当ID变量在列标题中编码时,将数据从宽格式转换为长格式

  5. 5

    在R中拆分列名称并将数据从宽格式转换为长格式

  6. 6

    在R中将数据帧从“宽”格式转换为“长”格式

  7. 7

    如何在R中将范围分割成微小的长部分并将其从宽格式转换为长格式?

  8. 8

    如何在R中将具有大量行的大文件从长格式转换为宽格式?

  9. 9

    如何在Python中将csv文件从宽格式转换为长格式

  10. 10

    在R中将带有计数的宽数据帧转换为长格式

  11. 11

    当列不代表所有时间点时,R将数据集从宽变长

  12. 12

    数据从宽格式到长格式,具有多个不同类型的重复列

  13. 13

    R:覆盖从宽格式到长格式的数据帧

  14. 14

    如何使用Python将CSV数据从宽格式转换为长数据集

  15. 15

    如何从数据库中以 HTML 格式显示没有时间的日期格式?

  16. 16

    长面板中具有时间和id条件的虚拟变量

  17. 17

    我可以使用哪种转换器将日期转换为YYYY-MM-DD格式,而最终结果中没有时间格式?

  18. 18

    从具有多个唯一变量的长格式到宽格式转换为R中的其他唯一变量

  19. 19

    在SQL Server和DataFrame中将宽格式转换为长格式具有大约1000列-优化

  20. 20

    熊猫中将贸易数据集转换为长格式的最有效方法?

  21. 21

    在R中将矩阵最快转换为长格式数据帧

  22. 22

    如何在R中将as_tibble()格式的时间序列数据转换为as_tsibble()格式?

  23. 23

    当值具有不同格式时如何将变量转换为时间格式

  24. 24

    具有时间格式的getHours()2016-04-29T19:00:00

  25. 25

    将具有互不排斥类别的长数据转换为宽格式

  26. 26

    将现有时间戳列数据从本地时间转换为UTC

  27. 27

    如何在熊猫中将长数据格式转换为宽数据格式

  28. 28

    将具有时间单位(ms,s,us)的字符转换为数字

  29. 29

    将矩阵转换为长格式(R)的数据帧

热门标签

归档