gpt4 book ai didi

r - 错误: requires numeric/complex matrix/vector arguments when using matrix times vector multiplication

转载 作者:行者123 更新时间:2023-12-03 07:58:12 28 4
gpt4 key购买 nike

这是我的代码:

indices <- as.matrix(sapply(cpi_calc[2:nrow(cpi_calc), 1:ncol(cpi_calc)], as.numeric))  
weigths <- as.matrix(sapply(cpi_calc[1, 1:ncol(cpi_calc)], as.numeric))
CPI77_82 <- indices %*% weights

我想使用索引矩阵和权重 vector 来计算CPI。矩阵和 vector 在变量窗口中均显示为num。我不知道为什么矩阵乘法不起作用。
Error in indices %*% weights : 
requires numeric/complex matrix/vector arguments

而且我知道还有很多其他类似的问题,但是我的代码对我来说似乎还不错,我尝试了所有其他类似问题的答案。请帮忙! :)

编辑:
 > cpi_calc[2:6, 1:6]
# A tibble: 5 x 6
X__1 X__2 X__3 X__4 X__5 X__6
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 100.00 100.00 100.00 100.00 100.00 100.00
2 99.99 100.00 100.07 100.01 100.80 101.59
3 99.52 99.58 99.94 100.01 101.03 101.38
4 99.46 99.44 99.85 100.01 101.03 101.03
5 99.13 99.37 99.79 99.97 101.00 101.82

> t(cpi_calc[1, 1:6])
[,1]
X__1 0.358
X__2 0.359
X__3 0.060
X__4 0.419
X__5 0.191
X__6 0.296

最佳答案

这很好。您的cpi_calc表中必须包含一些NA。试试na.omit(cpi_calc)

cpi_calc <- read.table(text="0.358  0.359   0.06    0.419   0.191   0.296
100 100 100 100 100 100
99.99 100 100.07 100.01 100.8 101.59
99.52 99.58 99.94 100.01 101.03 101.38
99.46 99.44 99.85 100.01 101.03 101.03
99.13 99.37 99.79 99.97 101 101.82",header=FALSE)

as.matrix(cpi_calc[2:6, 1:6]) %*% t(cpi_calc[1, 1:6])
1
2 168.3000
3 168.9282
4 168.5832
5 168.4024
6 168.4669

关于r - 错误: requires numeric/complex matrix/vector arguments when using matrix times vector multiplication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47474818/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com