如何建立依賴主列表的隨機單字列表?

如何建立依賴主列表的隨機單字列表?

我正在使用 Excel for Mac 2011

對於語言學項目,我想做以下事情。我將有一個像這樣的單字清單(實際上它會更大):

主列表:

  1. 包包
  2. 磁鐵
  3. 蘋果

首先,我將這些單字複製並貼上到新的工作表中。然後,我在相鄰列中建立隨機數(使用 RAND)。為了獲得隨機列表,我使用 SORT,按隨機創建的數字的值對單字列表進行排序。

  1. 包.011234123
  2. 腿.001324234
  3. 磁鐵.01324243
  4. 蘋果.013245588
  5. 口香糖.0123412341

按數字列排序

這讓我很困惑:::

隨機化1:

  1. 磁鐵
  2. 蘋果
  3. 包包

我將進行幾次隨機分組。假設我想改變一個字。有沒有辦法讓隨機化取決於主列表?也就是說,如果我對主列表進行更改(更改一個單字),是否有辦法讓這些更改也對我的隨機化進行?

答案1

我可以建議使用 RAND()、RANK() 和 VLOOKUP() 組合的解決方案:

首先,建立您的主列表:

在此輸入影像描述

然後添加一列,使用以下命令產生隨機數字RAND()

在此輸入影像描述

然後,將使用 RANK() 對這些隨機數字進行排名的欄位:=RANK(E2,E:E)

在此輸入影像描述

最後,使用 ROW() 和 VLOOKUP() 傳回排序後的排名:=VLOOKUP(ROW()-1,C:D,2,0)

在此輸入影像描述

添加到主列表中的任何單字都會導致每個 RAND() 重新計算,這將改變排名,本質上是創建一個新的隨機順序。

在此輸入影像描述

對於您需要的三個隨機清單重複此操作三次。

在此輸入影像描述

答案2

假設您的資料位於 Sheet1 上,從 A1 開始,並按 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()是不穩定的,這意味著每次計算工作表時它都會重新計算自己。如果您打算使用此方法,我建議您使用手動計算。

相關內容