2
데이터 집합의 각 행에 함수를 호출하는 함수를 만들었습니다. 출력을 벡터로 만들고 싶습니다. 아래에서 볼 수 있듯이이 함수는 결과를 화면에 출력하지만 함수 외부에서 사용할 수있는 벡터로 출력을 리디렉션하는 방법을 알 수 없습니다.벡터로 함수 결과 출력
n_markers <- nrow(data)
p_values <-rep(0, n_markers)
test_markers <- function()
{
for (i in 1:n_markers)
{
hets <- data[i, 2]
hom_1 <- data[i, 3]
hom_2 <- data[i, 4]
p_values[i] <- SNPHWE(hets, hom_1, hom_2)
}
return(p_values)
}
test_markers()
1. 당신은해야 : 코멘트에 언급 한 바와 같이
을하지만, 함수는 아마도 감소 될 수있다 전역에 의존하기보다는 함수의 인수를 버리는 습관을 갖습니다 (http://stackoverflow.com/questions/5526322/examples-of-the-perils-of-globals-in-r-and-stata). 2. 이미 그렇게 할 수있는 기능이 있습니다. 'apply (my.data, 1, ...)' –
'shinyNewVector <- test_markers()'를 보라. gsk3의 충고에도 유의하십시오. – Chase
R에 대한 기본적인 소개를 읽으십시오. for 회 돌이 대신 벡터로 사고하기 위해 사고 방식을 전환해야합니다. – Hansi