将行添加到变量以创建表-RStudio

问题描述 投票:0回答:1

我正在尝试在RStudio的股票之间建立一个相关矩阵。每只股票在某些日期都有一些空(NA)数据,并在不同的日期开始时间序列。在创建矩阵之前,我需要创建一个包含所有变量(股票价格)的表(带有data.frame或其他选项),但是这是不可能的,因为每个行都有不同的行数。有两个可能的答案:1)如何以一种创建表的方式将NA数据添加到所有缺少行的变量中?要么;2)如何只保留包含相关矩阵所需的所有变量的数据的行?

r dataframe datatable rows
1个回答
0
投票

此解决方案提供了对1)的答案:

说明性数据

set.seed(123)
stock1 <- sample(50:100, 10)
stock2 <- sample(50:100, 5)

SOLUTION

要将数据帧变量调整为相同的长度,您可以将上面说明性数据中最长向量的长度stock1作为参考点,从中减去其他向量的长度以获得必要的NA。您可以使用NA连接较短的向量和rep行的数量:

df <- data.frame(
  Stock_1 = stock1,
  Stock_2 = c(stock2, rep(NA, length(stock1) - length(stock2)))
)

结果

df
   Stock_1 Stock_2
1       64      98
2       89      72
3       70      83
4       92      77
5       94      54
6       52      NA
7       73      NA
8       99      NA
9       96      NA
10      69      NA
© www.soinside.com 2019 - 2024. All rights reserved.