2013-10-30 108 views
1

我刚开始使用R程序,并且在计算出我的程序出了什么问题时遇到了一些麻烦。我在R程序中导入了一个文件,当试图询问“玉米”和“棉花”的平均值和标准偏差时,我不断收到错误'object'corn'not found'和'object'cotton'not found'。以下是我的程序的开始,我进口的.txt文件:将文件导入到R程序中?

rm(list=ls(all=T)) 

# data 
detach(data) 
data<-read.table("D:/stalkeyedflies.txt", header=T) 
attach(data) 

data 
names(data) 
summary(data) 

# mean and standard deviation of corn 
mean(corn) 
sd(corn) 

# mean and standard deviation of cotton 
mean(cotton) 
sd(cotton) 

这是.txt文件的样子:

Treatment eye.span 
corn 2.15 
corn 2.14 
corn 2.13 
cotton 2.12 
cotton 2.07 
cotton 2.01 

预先感谢您这么多! !

回答

4

您应该按列逐列。例如:

mean(subset(dat,Treatment=='corn')$eye) 
[1] 2.14 
> mean(subset(dat,Treatment=='cotton')$eye) 
[1] 2.066667 

或者更好地在这里你应该使用tapply通过治疗组应用平均:

tapply(dat$eye.span,dat$Treatment,mean) 
    corn cotton 
2.140000 2.066667 

这里DAT是:

dat <- read.table(text='Treatment eye.span 
corn 2.15 
corn 2.14 
corn 2.13 
cotton 2.12 
cotton 2.07 
cotton 2.01',header=TRUE) 
0

data<-read.table("stalkeyedflies.txt", header=T) 
 
data 
 
corn<-data[data$Treatment=="corn",] 
 
# get the subset of corn 
 
mean(corn[,"eye.span"]) 
 
# calculate the mean of corn 
 

 
cotton<-data[data$Treatment=="cotton",] 
 
# get the subset of cotton 
 
sd(cotton[,"eye.span"]) 
 
# calculate the sd of cotton