刚开始R和我被要求创建一个功能,允许其用户获得一个矩阵,其中包含一些描述性的统计变量统计数据。这不是太难,但我不知道如何让用户选择他想要的那些..
Descriptives=function(w=2,y=stats.data.quant.col) {
## w = decimals (2 by default)
## y = stats.data.quant.col (by default) OR stats.data.quant.row
data.quant=data[,sapply(data, function(x) is.numeric(x) | is.integer(x))]
stats.data.quant=apply(data.quant,2, function(x) c(Nobs=length(x),Moyenne=mean(x),Mediane=median(x),Variance=var(x),Ecart.type=sd(x),Etendue=max(x)-min(x),Coefficient.variation=sd(x)/mean(x),Deciles=quantile(x,seq(0.1,0.9,0.1))))
stats.data.quant.row=round(stats.data.quant,w)
stats.data.quant.col=round(t(stats.data.quant),w)
y
}
有人可以给我一个提示吗?我现在迷路了
答案 0 :(得分:1)
您需要以交互方式阅读用户输入。方法如下:
cat("Which of these fine output versions would you like? ")
cat("Version A: Statistical results")
cat("Version B: Pretty plots")
x <- readLines(file("stdin"),1)print(x)
if(x == "A"){
# your code goes here
} else{
# default output
}
您也可以使用scan
功能代替readLines
。