의 data.frame에 저장된 목록 반복이 질문은 초보자 용 질문이지만 효과적인 Google 검색을위한 적절한 어휘가없는 것 같습니다.R.
나는 각각 의 목록을 포함하는 data.frame 인 final
을 가지고 있는데, 각각은 문자열 목록입니다.
for 루프 내의 for 루프에 대해 각 클러스터의 문자열 목록을 반복하고 싶습니다.
for (j in final$clusters){
for (i in final$clusters$`j`){
print final$clusters$`j`[i]
}
}
j
이 clusters
의 목록에 해당하고, i
내가 length(final$clusters[1])
처럼 뭔가있을 것이라고 생각 각 클러스터의 길이를 사용하여 clusters[j]
내가이 일을 시도하고 있었다의 항목에 해당하고, 그러나 그것은리스트의 길이가 아니라 1을 제공합니다.
또한, final$clusters[1]
는 '1'$ 제공하고, 다음 줄에, 클러스터의 모든 문자열은 1
감사합니다.
편집 : dput(str(final))
의 출력 요청에 따라 :
List of 2
$ clusters :List of 1629
..$ 1 :
..$ 2 :
..$ 3 :
..$ 4 :
..$ 5 :
..$ 6 :
..$ 7 :
..$ 8 :
..$ 9 :
..$ 10 :
.. [list output truncated]
$ cluster_stats: num [1:1629, 1:6] 0.7 0.7 0.7 0.7 0.7 0.7 ...
..- attr(*, "dimnames")=List of 2
.. ..$ : chr [1:1629] "1" "2" "3" "4" ...
.. ..$ : chr [1:6] "min" "qu1" "median" "mean" ...
NULL
그래서'rapply'는 당신이 말한 것처럼리스트 목록을 출력합니다 (설명을 해주셔서 감사합니다). 그러나 한 번에 하나만 목록을 인쇄하고 싶습니다. (실제로'sink '를 사용하여 각각의 클러스터를 다른 파일에 인쇄하고 싶습니다.)'print'가 작동하지 않습니다. (마지막 $ 클러스터 [j], f = print)}'는'NULL'의 많은 줄을 반환합니다. – dd3
@ dd3'rapply'와'for'을 조합 할 필요가 없습니다. 'Rapply'는 leafs를 얻기 위해리스트를 통해 recusrivly 갈 것입니다 .. 당신은'dput (str (final))을 dput하고 제 질문에 그것을 덧붙일 수 있습니까? – agstudy
문제는 단지 이것을 위해하고 싶습니다. 하위 목록 중 한 번에 귀하의 예제에서, 나는 단지'cluster1'의 출력을 얻고, 파일에 쓰고, 다른 클러스터에 대해서도 똑같은 작업을하고 싶습니다. 각각은 다른 파일에 쓰고 있습니다. 요청한 결과를 내 질문에 추가했습니다. 당신의 도움을 주셔서 감사합니다. – dd3