Remove nested for loops in python
I'm not sure if you really desire that output. But I'll do some refactoring to show what your code does.

In your code

def create_game_data():
    columns = {}
    for column in columnNames.keys():
        columnValues = []
        for event in events:
            columnValues.append(columnNames[column]) if column in columnNames.keys() else columnValues.append("NA")
        columns[column] = columnValues
    return columns


there is an if condition always true. if column in columnNames.keys() is always true for your loop for column in columnNames.keys(). So we skip that test

def create_game_data():
    columns = {}
    for column in columnNames.keys():
        columnValues = []
        for event in events:
            columnValues.append(columnNames[column])
        columns[column] = columnValues
    return columns


Next we find that you loop over the events without using them. So we could safely write 

def create_game_data():
    columns = {}
    for column in columnNames.keys():
        columnValues = []
        for _ in events:
            columnValues.append(columnNames[column])
        columns[column] = columnValues
    return columns


This is equivalent to 

def create_game_data():
    columns = {}
    for column in columnNames.keys():
        columns[column] = [columnNames[column]] * len(events)
    return columns


Now we chose to iterate over the dict in a key-value manner

def create_game_data():
    columns = {}
    for column, name in columnNames.items():
        columns[column] = [name] * len(events)
    return columns


Which is easily written as comprehension

def create_game_data():
    return {k:[v] * len(events) for k, v in columnNames.items()}


Is that really what you want?