gpt4 book ai didi

r - 根据R中的间隔(子集函数)选择矩阵

转载 作者:行者123 更新时间:2023-12-03 08:22:36 25 4
gpt4 key购买 nike

我想基于X2列值对一个矩阵进行子集化。我试了一下:

on <- subset(mat.num, X2 <= -3)
un <- subset(mat.num, X2 >= -1.50000 & X2 <= -0.3599999)
dn <- subset(mat.num, X2 >= -0.3599998 & X2 <= 0.5)

但是我得到这个错误:
Error in subset.matrix(mat.num, X2 <= -3) : object 'X2' not found.

ps:我有一个 X2列:
mat.num头:
     T_EBV     X2
[1,] 0.09 -0.00777840
[2,] 0.26 0.03600431
[3,] 0.20 -0.06191900
[4,] 0.25 0.13423752
[5,] 0.42 0.06354759
[6,] -0.20 0.06303164

最佳答案

矩阵方法没有像使用数据框那样引用列名。您可能想要:

subset(mat.num, mat.num[,2] <= -3)

如果查看 subset.matrix的代码,您会发现它没有在任何特殊环境中评估子集条件:
if (missing(subset)) 
subset <- TRUE
else if (!is.logical(subset))
stop("'subset' must be logical")
x[subset & !is.na(subset), vars, drop = drop]

与使用 subset.data.frameevalsubstitute相反。

关于r - 根据R中的间隔(子集函数)选择矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23392616/

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