<commit_before># Using Spreadsheets For Data In SimpleAHP
The *SimpleAHP* web application can load data from a spreadsheet and present the results.  The spreadsheet can either be:
* An Excel **XLSX** file, or
* A google spreadsheet

No matter which of the two options you choose, the way data needs to be put into the the spreadsheet is identical.

## Spreadsheet structure
The rules for the spreadsheet structure are fairly straightforward

1. Each voter gets their own sheet within the spreadsheet, the name of the sheet is the name of the user
2. Demographic information is in a separate sheet called **info**
3. We accept several formats for the actual pairwise votes.
4. A few extra notes:
  1. Not all voters need to do a complete comparison set (in fact they all could do as little as a spanning set)
  2. The voters could even do *different* spanning sets
  3. We allow both Equals/Better/Much Better voting (EBB voting) and standard 1-9 scale voting
  4. You can mix EBB votes and 1-9 votes in the same spreadsheet
  5. You can even mix EBB and 1-9 votes in a single participant's sheet!

### Format of a single voter's sheet
The layout for the sheet of a single voter's values follows a three column format.

1. The first column is the name of the **First Alternative** being compared
2. The second column is the vote value (see [Legal pairwise vote values](#legal-pairwise-vote-values) for details)
3. The third column is the name of the **Second Alternative** being compared.

In other words the structure of a row is like a sentence ``A *is much better* than B''

### Legal pairwise vote values

<commit_msg>Update Using_A_Spreadsheet.md<commit_after># Using Spreadsheets For Data In SimpleAHP
The *SimpleAHP* web application can load data from a spreadsheet and present the results.  The spreadsheet can either be:
* An Excel **XLSX** file, or
* A google spreadsheet

No matter which of the two options you choose, the way data needs to be put into the the spreadsheet is identical.

## 1. Spreadsheet structure
The rules for the spreadsheet structure are fairly straightforward

1. Each voter gets their own sheet within the spreadsheet, the name of the sheet is the name of the user
2. Demographic information is in a separate sheet called **info**
3. We accept several formats for the actual pairwise votes.
4. A few extra notes:
  1. Not all voters need to do a complete comparison set (in fact they all could do as little as a spanning set)
  2. The voters could even do *different* spanning sets
  3. We allow both Equals/Better/Much Better voting (EBB voting) and standard 1-9 scale voting
  4. You can mix EBB votes and 1-9 votes in the same spreadsheet
  5. You can even mix EBB and 1-9 votes in a single participant's sheet!

### 1.1 Format of a single voter's sheet
The layout for the sheet of a single voter's values follows a three column format.

1. The first column is the name of the **First Alternative** being compared
2. The second column is the vote value (see [Legal pairwise vote values](#legal-pairwise-vote-values) for details)
3. The third column is the name of the **Second Alternative** being compared.

In other words the structure of a row is like a sentence ``A *is much better* than B''

### 1.2 Legal pairwise vote values
The following are legal values for the second column (the vote value column)

* **<** Means the first alternative is better.  Think of it like &#x2190; pointing towards the dominant choice.  For example

  | A        | B |   C     |
  |----------|---|---------|
  |Chocolate | < | Vanilla |  
  Is a vote of *Chocolate is better than Vanilla*
  
* **<<** Means the first alternative is much better.  Think of it like a double &#x2190;, pointing towards the dominant choice.

  | A        | B |   C     |
  |----------|---|---------|
  |Chocolate | << | Vanilla |  
  Is a vote of *Chocolate is* **much** *better than Vanilla*
  

* **>** Means the second

{'fraction_non_alphanumeric': 0.07315829722151415, 'fraction_numerical': 0.012490440989039, 'mean_word_length': 3.5681024447031433, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2748198', 'n_tokens_mistral': 1091, 'n_tokens_neox': 1011, 'n_words': 626}