Mac 2011에서 Excel을 사용하고 있습니다.
언어학 프로젝트의 경우 다음을 수행하고 싶습니다. 나는 다음과 같은 단어 목록을 갖게 될 것입니다(실제로는 훨씬 더 클 것입니다).
마스터 목록:
- 가방
- 다리
- 자석
- 사과
- 고무
먼저 단어를 복사하여 새 시트에 붙여넣습니다. 그런 다음 인접한 열에 RAND를 사용하여 난수를 생성합니다. 무작위 목록을 얻으려면 SORT를 사용하여 무작위로 생성된 숫자의 값을 기준으로 단어 목록을 정렬합니다.
- 가방.011234123
- 다리 .001324234
- 자석 .01324243
- 사과 .013245588
- 껌.0123412341
NUMBERS COLUMN 기준으로 정렬
이게 나를 사로잡는다:::
무작위화 1:
- 고무
- 자석
- 사과
- 가방
- 허락하다
나는 여러 가지 무작위 추출을 할 것입니다. 내가 단어 하나를 바꾸고 싶다고 가정해 봅시다. 마스터 목록에 따라 무작위화를 수행하는 방법이 있습니까? 즉, 마스터 목록을 변경하는 경우(단어 변경) 이러한 변경 사항이 내 무작위 추출에도 적용되도록 할 수 있는 방법이 있습니까?
답변1
RAND(), RANK() 및 VLOOKUP() 조합을 사용하여 솔루션을 제안할 수 있습니다.
먼저 마스터 목록을 만듭니다.
그런 다음 다음을 사용하여 난수를 생성하는 열을 추가합니다 RAND()
.
그런 다음 RANK()를 사용하여 해당 난수의 순위를 매기는 열은 다음과 같습니다.=RANK(E2,E:E)
마지막으로 ROW() 및 VLOOKUP()을 사용하여 정렬된 순위를 반환합니다.=VLOOKUP(ROW()-1,C:D,2,0)
마스터 목록에 단어를 추가하면 각 RAND()가 다시 계산되고 순위가 변경되어 본질적으로 새로 무작위 순서가 생성됩니다.
필요한 세 개의 무작위 목록에 대해 이 과정을 세 번 반복합니다.
답변2
데이터가 A1부터 시작하는 Sheet1에 있고 임의의 숫자인 B열을 기준으로 정렬되어 있다고 가정하고 이 수식을 행 1부터 시작하여 아래로 자동 완성합니다.
=INDEX(Sheet1!A$1:A$6,ROW())
단순히 채워질 때 인수를 ROW()
증가시키는 데 사용됩니다 .row_num
INDEX()
또는 정렬하지 않으려면 다음 수식을 사용해 보세요.
=INDEX(Sheet1!A$1:A$6,MATCH(LARGE(Sheet1!B$1:B$6,ROW()),Sheet1!B$1:B$6,0))
이것은 좀 더 재미 있습니다. 자동으로 증가하는 데 다시 사용하면 다음으로 가장 큰 난수를 찾은 다음 해당 위치의 단어를 반환하는 데 ROW()
사용됩니다 .LARGE()
INDEX/MATCH
RAND()
이는 휘발성이므로 워크시트가 계산될 때마다 자체적으로 다시 계산된다는 점을 명심하세요 . 이 방법을 사용하려면 수동 계산을 사용하는 것이 좋습니다.