R数据帧问题阻止正常性测试
我已经读取了我的.CSV文件,然后使用以下几种方法将文件转换为数据帧:R数据帧问题阻止正常性测试,r,dataframe,R,Dataframe,我已经读取了我的.CSV文件,然后使用以下几种方法将文件转换为数据帧: df<-read.csv('cdSH2015Fall.csv', dec = ".", na.strings = c("na"), header=TRUE, row.names=NULL, stringsAsFactors=F) df<-as.data.frame(lapply(df, unlist)) # converted .csv to a a data.frame str(df) # provid
df<-read.csv('cdSH2015Fall.csv', dec = ".", na.strings = c("na"), header=TRUE,
row.names=NULL, stringsAsFactors=F)
df<-as.data.frame(lapply(df, unlist)) # converted .csv to a a data.frame
str(df) # provides the structure of df.
'data.frame': 72 obs. of 16 variables:
$ trtGroup : Factor w/ 68 levels "AANN","AAPN",..: 5 7 14 18 20 23
27 33 37 48 ...
$ cd : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
$ PreviousExp : Factor w/ 2 levels "Empty","Enriched": 2 1 2 2 2 2 1
1 1 1 ...
$ treatment : Factor w/ 2 levels "NN","PN": 1 1 1 1 1 1 1 1 1 1 ...
$ total.Area.DarkBlue.: num 827 1037 663 389 983 ...
$ numberOfGroups : int 1 1 1 1 1 1 1 1 1 1 ...
$ totalGroupArea : num 15.72 2.26 9.45 11.57 9.73 ...
$ averageGrpArea : num 15.72 2.26 9.45 11.57 9.73 ...
$ proximityToPlants : num 5.65 16.05 2.58 9.65 4.74 ...
$ latFeed : num 2 0.5 0 1 0 0 1 0.5 2 1 ...
$ latBalloon : num 6 2 2 NA 0 0.1 3 0.5 1 0.7 ...
$ countChases : int 5 8 16 4 16 21 18 11 14 28 ...
$ chases : int 95 87 67 923 636 96 1210 571 775 816 ...
$ grpDiameter : num 16.8 23.3 19.5 11.2 29.9 ...
$ grpActiv : num 4908 5164 4197 5263 5377 ...
$ NND : num 0 11.88 8.98 3.6 9.8 ...
第二个选择是确保我有一个正确的数据帧
- 将数据子集,然后创建一个矩阵
cdProximityToPlantsPN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==1 & cdSH2015Fall$treatment == 'PN')] H2ProximityToPlantsPN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==0 & cdSH2015Fall$treatment == 'PN')] cdProximityToPlantsNN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==1 & cdSH2015Fall$treatment == 'NN')] H2ProximityToPlantsNN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==0 & cdSH2015Fall$treatment == 'NN')]
我知道问题一定出在我的数据结构上。关于如何修复它有什么想法吗?
说它需要一个lm或glm对象?car::outlierTest
不会产生这两个。除了@blindjesse指出的以外,read.csv会立即产生一个数据帧,为什么它t.test
ed?@blindjesse,是的,关于汽车测试你是对的。我不明白qqPlot为什么不工作?@R.S.是的,我以为read.csv会产生一个data.frame。我不知道为什么qqPlot说我有一个“列表”。因为我在运行qqPlot时遇到了“list”错误,所以我认为read.csv没有创建正确的“data.frame”。这是因为您正在将unlist
输出传递到t.test
,并且它可能正在取消分类并获取列表。您可能想在数据框中qqplot一些特定的列,是吗?QQQplot
cdProximityToPlantsPN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==1 & cdSH2015Fall$treatment == 'PN')] H2ProximityToPlantsPN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==0 & cdSH2015Fall$treatment == 'PN')] cdProximityToPlantsNN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==1 & cdSH2015Fall$treatment == 'NN')] H2ProximityToPlantsNN<-cdSH2015Fall$proximityToPlants[which (cdSH2015Fall$cd==0 & cdSH2015Fall$treatment == 'NN')]
df<- cbind(cdProximityToPlantsPN,H2ProximityToPlantsPN,cdProximityToPlantsNN, H2ProximityToPlantsNN) mat <- sapply(df,unlist) fit=t.test(mat[,1],mat[,2], paired = F, var.equal = T)
outlierTest(fit) # Bonferonni p-value for most extreme obs Error in UseMethod("outlierTest") : no applicable method for 'outlierTest' applied to an object of class "htest" qqPlot(fit, main="QQ Plot") #qq plot for studentized resid Error in order(x[good]) : unimplemented type 'list' in 'orderVector1' leveragePlots(fit) # leverage plots Error in formula.default(model) : invalid formula