我试图将特定函数的水平输出转换为垂直输出,我试图找出“cat”函数,但无法找到这样做的方法。我关注的功能如下:
context <- function (a,b,c)
{
U=matrix(0, nrow = c, ncol = c)
t = 0.4
m = 0.2
for (i in 1:c)
{
U[i] = t*a + b/i - 0.224
}
cat(U)
}
context(2,3,7)
我得到的输出是:
3.576 2.076 1.576 1.326 1.176 1.076 1.004571 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
但是,我不知道我是通过操纵函数本身来以垂直方式输出。 如果我能得到帮助,我将不胜感激。
非常感谢你!
答案 0 :(得分:2)
我不明白为什么要创建所有这些零。
也许您想要退回矩阵?
context <- function (a,b,c)
{
t = 0.4
m = 0.2
U = t*a + b/seq_len(c) - 0.224
as.matrix(U)
}
context(2,3,7)
# [,1]
#[1,] 3.576000
#[2,] 2.076000
#[3,] 1.576000
#[4,] 1.326000
#[5,] 1.176000
#[6,] 1.076000
#[7,] 1.004571
答案 1 :(得分:0)
t(data)
可能是更好的解决方案。
有关详细信息,请查看:https://www.r-statistics.com/tag/transpose/。