Updating Google Sheets table efficiently
These are my suggestions regarding performances:
Generate random numbers only if needed
The new value for the column 7 can be generated after you are sure that needs to be updated. From:
elif (row[3] == '4'):
    random_1 = randint(1, 3)
    if chance &lt;= 0.1:
        print('4 EXECUTED!')
        sheet_store.update_cell(i+1, 8, random_1)

To:
elif (row[3] == '4'):
    if chance &lt;= 0.1:
        print('4 EXECUTED!')
        sheet_store.update_cell(i+1, 8, randint(1, 3))

In this way, the new random value is generated only if chance&lt;=0.1. Same for the other cases.
API call cost
I assume that you are using gspread. The doc says:

Under the hood, gspread uses Google Sheets API v4. Most of the time
when you call a gspread method to fetch or update a sheet gspread
produces one HTTP API call.

Given this statement, your code sends 1 API call with get_all_values() and 1 APIs call for each row to update with update_cell(). In the worst case, there are 5 API calls.
One suggestion is to generate the list of all new values for the column 7 and send a single update call with update(), so that the total number of API calls will be reduced to 2.