말을 연속 변수 대 범주 분리 할 수있는 간단한 방법이 있을까요, 그리고 내 모델 변수 선택을 할 노력하고있어 나는내가 약 500 변수 가능한 R에 두 개의 데이터 세트에
(응답은 바이너리) 모든 연속성에 대한 일종의 corr 분석을 계획하고, 그 다음에 범주 형 분석을 수행합니다.
많은 변수가 포함되어 있으므로 수동으로 할 수 없습니다.
사용할 수있는 기능이 있습니까? 아니면 모듈일까요?
말을 연속 변수 대 범주 분리 할 수있는 간단한 방법이 있을까요, 그리고 내 모델 변수 선택을 할 노력하고있어 나는내가 약 500 변수 가능한 R에 두 개의 데이터 세트에
(응답은 바이너리) 모든 연속성에 대한 일종의 corr 분석을 계획하고, 그 다음에 범주 형 분석을 수행합니다.
많은 변수가 포함되어 있으므로 수동으로 할 수 없습니다.
사용할 수있는 기능이 있습니까? 아니면 모듈일까요?
나는 R
에 iris
데이터 세트를 사용하고 있습니다. 그렇다면
sapply(iris, is.factor)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
FALSE FALSE FALSE FALSE TRUE
당신의 열이 요인인지 아닌지 알려줍니다. 따라서
iris[ ,sapply(iris, is.factor)]
을 선택하면 요인 열만 선택할 수 있습니다. 및
iris[ ,!sapply(iris, is.factor)]
은 요소가 아닌 해당 열을 제공합니다. is.numeric
, is.character
및 다른 다른 버전을 사용할 수도 있습니다.
str(df)
을 사용하여 어떤 열이 요인이고 어떤 열이 중요하지 않은지 확인할 수 있습니다 (df는 데이터 프레임 임). 예를 들어, 데이터 R의 홍채를 위해 :
str(iris)
'data.frame': 150 obs. of 5 variables:
$ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
$ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
$ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
$ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
$ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
또는, 당신은 더 적은 전체의 몇 가지 부분보다 고유 한 값의 수에 대한 논리적 반환하는 함수를 작성 lapply(iris,class)
$Sepal.Length
[1] "numeric"
$Sepal.Width
[1] "numeric"
$Petal.Length
[1] "numeric"
$Petal.Width
[1] "numeric"
$Species
[1] "factor"
을 사용할 수 있습니다 그리고 난 ' data.frame 이제
discreteL <- function(x) length(unique(x)) < 0.05*length(x)
sapply
그것 (연속 변수 부정 사용) : m 5 % 따기
> str(iris[ , !sapply(iris, discreteL)])
'data.frame': 150 obs. of 4 variables:
$ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
$ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
$ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
$ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
내가 생각하는 기준으로 특정 숫자, 예를 들어 15를 선택할 수 있습니다.
통계 이론에 따르면이 절차가 설명 된 목적을 위해 위험하다는 것을 알 수 있습니다. 바이너리 응답과 가장 관련이있는 변수를 선택하는 것만으로는 충분하지 않습니다. 변수 선택에 대한 더 나은 접근법을 보여주는 많은 연구가있었습니다. 그래서 제 대답은 실제로 분리를 수행하는 방법 일 뿐이지 만 모호하게 묘사 한 전반적인 계획을지지하는 것은 아닙니다.
이것은 모든 범주 적 값이 뚜렷한 ID 번호와 같은 경우에는 작동하지 않을 수 있습니다. – Henry
True 'nuff. 나는 또한'table (diff (x))'를 볼 수 있다고 가정한다. –
범주 형 변수가 이미 요소 또는 문자로 저장되어 있습니까? – Dason
당신은 범주적이고 연속적인 정의가 무엇인지 설명해야합니다. – eddi