2012-01-22 3 views
0

RODBC 패키지를 사용하여 SQL 쿼리에서 데이터 프레임을 만들었습니다. 필자는 각 행에 주 데이터 집합의 열 이름이 들어있는 별도의 단일 열 데이터 프레임을 사용하여 요소로 변환하려고합니다.R - 데이터 프레임의 변수를 계수로 변환

구문은 분명히 잘못되었지만 이것은 논리입니다.

for(c in 1:length(df.ToFactor$IV)-0) { 

VarToFactor<- as.character(df.ToFactor$IV[c]) 
df.dataset[VarToFactor]<-factor(df.HRV[VarToFactor]) 

} 

어떤 도움을 주시면 감사하겠습니다.

답변

4

정수 벡터에서 0을 뺀 것이별로 의미가 없습니다. 나는에 대한 루프에서 생각하지만,

for(c in 1:length(df.ToFactor$IV)) { 

VarToFactor<- as.character(df.ToFactor[["IV"]][c]) 
df.dataset[[VarToFactor]]<-factor(df.HRV[[VarToFactor]]) 
     } 

나는 또한 프로그래밍에서 더 안전해서 등가 "[["작업에 "$"작업을 변경 : 난 당신이 [[<var-name>]] 건설을 사용하는 wnat 의심 대화식 세션은 문제를 일으키지 않습니다. "[["및 "["에 대한 설명이있는 "추출 페이지"외에도 Patrick Burns의 "R Inferno"에서 유용한 정보를 찾을 수 있습니다. 이 특정 영역은 52 페이지에서 다룹니다.

+0

감사합니다. [[varname]] 작업에 대해 읽을 수있는 참조가 있습니까? 분명히 그 점을 더 잘 이해해야합니다. – user1162769

+1

? 추출 (콘솔에서 입력).이 페이지를 연구하는 데는 약간의 작업이 필요합니다. 요점은 "$"연산자가 전달 된 변수 이름을 평가하지 않는다는 것을 인식하는 것이고 "[["는 따옴표로 묶이지 않을 때 수행합니다. 그러므로 $ b는 [[ "b"]]와 동일하지만 '$'는 x = "b"인 경우 [[x]]가 수행 할 작업을 수행하는 데 결코 사용할 수 없습니다. –

+0

간단히하기 위해 이름을 반복 할 수 있습니다. 'for (.df.ToFactor [[ "IV"]])) {df.dataset [[VarToFactor]] <- factor (df.HRV [[VarToFactor] ])}' – Marek

관련 문제