Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mshapiro.test';求解中出错。默认值(R%*%t(R),tol=1e-18):Lapack例程dgesv:系统完全是单数:U[7,7]=0';_R_Lapack_Manova - Fatal编程技术网

mshapiro.test';求解中出错。默认值(R%*%t(R),tol=1e-18):Lapack例程dgesv:系统完全是单数:U[7,7]=0';

mshapiro.test';求解中出错。默认值(R%*%t(R),tol=1e-18):Lapack例程dgesv:系统完全是单数:U[7,7]=0';,r,lapack,manova,R,Lapack,Manova,我试图使用mvnormtest软件包对我的数据进行多元正态性测试,其中两个受试者之间变量,一个受试者内部变量,三个因变量(二进制分类)。我的数据如下所示(约5600行,没有丢失的数据): 以下是我的设置: data.df <- read.csv( "data.csv", header=TRUE, sep="," ) attach(data.df) names(data.df) 一年前,我在统计课上的一个论坛上查看了一下,发现有人能够通过将数据分组来处理它 LowCluster

我试图使用mvnormtest软件包对我的数据进行多元正态性测试,其中两个受试者之间变量,一个受试者内部变量,三个因变量(二进制分类)。我的数据如下所示(约5600行,没有丢失的数据):

以下是我的设置:

data.df <- read.csv(
"data.csv", 
  header=TRUE, sep=","
  )

attach(data.df)
names(data.df)
一年前,我在统计课上的一个论坛上查看了一下,发现有人能够通过将数据分组来处理它

LowCluster <- t(dataMat[c(1:1877),1:6])
MedCluster <- t(dataMat[c(1878:3166),1:6])
HigCluster <- t(dataMat[c(3167:5364),1:6])
mshaplow <- mshapiro.test(LowCluster)
mshapmed <- mshapiro.test(MedCluster)
mshaphigh <- mshapiro.test(HigCluster)

如何解决这个问题?

有几个问题。首先,
mshapiro.test
函数要求数据采用行格式,因此需要使用
t()
来转换数据

但由于奇异矩阵的存在,它仍然会失败,因为列之间是完全线性的组合。例如,
Group
等于
4*Cluster
Measure
Measure2
相同。查看奇异矩阵了解更多信息

假设您只想测试
度量
变量的正态性,下面是一个代码示例,用于说明奇异矩阵问题:

df2 <- data.df[,c(4, 5, 6)]
df2[8,1] = 0 # changing this value makes it so no column is a linear combo of any other column
mshapiro.test(t(df2))

df2有几个问题。首先,
mshapiro.test
函数要求数据采用行格式,因此需要使用
t()
来转换数据

但由于奇异矩阵的存在,它仍然会失败,因为列之间是完全线性的组合。例如,
Group
等于
4*Cluster
Measure
Measure2
相同。查看奇异矩阵了解更多信息

假设您只想测试
度量
变量的正态性,下面是一个代码示例,用于说明奇异矩阵问题:

df2 <- data.df[,c(4, 5, 6)]
df2[8,1] = 0 # changing this value makes it so no column is a linear combo of any other column
mshapiro.test(t(df2))
df2
df2 <- data.df[,c(4, 5, 6)]
df2[8,1] = 0 # changing this value makes it so no column is a linear combo of any other column
mshapiro.test(t(df2))