gpt4 book ai didi

r - 如何将矩阵封装在 R 中的数据框中?

转载 作者:行者123 更新时间:2023-12-01 05:03:19 25 4
gpt4 key购买 nike

我正在尝试将数据放入数据框中:

> mymatrix <- matrix(seq(1, 12), ncol=4)
> mymatrix
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
> myresults <- c(TRUE, FALSE, TRUE)

我想将其封装在数据框中:
> df <- data.frame(mymatrix, myresults)
> df
X1 X2 X3 X4 myresults
1 1 4 7 10 TRUE
2 2 5 8 11 FALSE
3 3 6 9 12 TRUE

但是,当我尝试查找时:
> df$mymatrix
NULL

> df$
df$X1 df$X2 df$X3 df$X4 df$myresults
  • 为什么 df$mymatrix NULL ?
  • 为什么 mymatrix 的列“泄漏”到 df$命名空间?

  • 注意:我正在尝试创建类似于 yarn 包的数据

    最佳答案

    你可以试试

      df <- data.frame(mymatrix=I(mymatrix), myresults)
    df$mymatrix
    # [,1] [,2] [,3] [,4]
    #[1,] 1 4 7 10
    #[2,] 2 5 8 11
    #[3,] 3 6 9 12

    str(df)
    #'data.frame': 3 obs. of 2 variables:
    #$ mymatrix : 'AsIs' int [1:3, 1:4] 1 2 3 4 5 6 7 8 9 10 ...
    #$ myresults: logi TRUE FALSE TRUE

    lm(mymatrix ~ myresults, data=df)

    #Call:
    #lm(formula = mymatrix ~ myresults, data = df)

    #Coefficients:
    # [,1] [,2] [,3] [,4]
    #(Intercept) 2.000e+00 5.000e+00 8.000e+00 1.100e+01
    #myresultsTRUE 2.040e-16 8.158e-16 8.158e-16 2.448e-15

    顺便说一句,你不需要创建一个“df”来做到这一点
     lm(mymatrix~myresults)

    #Call:
    #lm(formula = mymatrix ~ myresults)

    #Coefficients:
    # [,1] [,2] [,3] [,4]
    #(Intercept) 2.000e+00 5.000e+00 8.000e+00 1.100e+01
    #myresultsTRUE 2.040e-16 8.158e-16 8.158e-16 2.448e-15

    关于r - 如何将矩阵封装在 R 中的数据框中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31238882/

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