“数据”是data.frame,具有10个数字变量。我想将所有变量作为6个百分位数组的分类变量(在5%以下,5%〜25%之间,25%〜50%之间,50%〜75%之间,75%〜95%之间,95%以上) ) 我想用一个函数来实现它,以便可以将所有变量归为一类。
我只能在没有以下功能的情况下执行此操作,因此我必须一遍又一遍地重复相同的代码。
<script>
function f() {
$('#some_element').text('Signing you in...');
player_name = $('.some_place').val();
logged = 1;
}
</script>
<body onload="setTimeout(f,500)">
我用lapply()和function(data,name)尝试了一些代码
m1<- quantile(data$val,0.05)
m2<- quantile(data$val,0.25)
m3<- quantile(data$val,0.5)
m4<- quantile(data$val,0.75)
m5<- quantile(data$val,0.95)
data$val[data$val<m1] = "below0.05"
data$val[data$val>= m1& data$val<m2 ] = "0.05to0.25"
data$val[data$val>= m2& data$val<m3 ] = "0.25to0.5"
data$val[data$val>= m3& data$val<m4 ] = "0.5to0.75"
data$val[data$valT>= m4& data$val<m5 ] = "0.75to0.95"
data$val[data$val>= m5] = "upper0.95"
data$val <-as.factor(data$val)
它仅在整个过程中起作用。我想知道如何做对。另外,我想知道如何在此处应用“ lapply()”,以便可以轻松地对所有变量进行分类。请任何人帮助!
fun =function(data,name) {
y <-get(name,data)
m1<- quantile(name,data,0.05)
m2<- quantile(name,0.25)
m3<- quantile(name,0.5)
m4<- quantile(name,0.75)
m5<- quantile(name,0.95)
RB = rbind(m1,m2,m3,m4,m5)
dimnames(RB)[[2]] = "Value"
name$data[ name$data<m1] = "below0.05"
name$data[ name$data>= m1& name$data<m2 ] = "0.05to0.25"
name$data[ name$data>= m2& name$data<m3 ] = "0.25to0.5"
name$data[ name$data>= m3& name$data<m4 ] = "0.5to0.75"
name$data[ name$data>= m4& name$data<m5 ] = "0.75to0.95"
name$data[ name$data>= m5] = "upper0.95"
name$data <-as.factor(name$data)
}
使用调试重新运行