Где-то в столбце 8 CSV пусто, вам нужно решить, является ли это ошибкой, которая должна завершить вашу программу, или что-то, из чего вы можете восстановиться. Следующий код регистрирует ошибку и продолжает обработку. Как минимум, это хороший способ отладки проблемы.
import os
import csv
CURRENT_DIR = os.path.dirname(__file__)
file_path = os.path.join(CURRENT_DIR, 'sitka_weather_2018_full.csv')
with open(file_path) as f:
reader = csv.reader(f)
header_row = next(reader)
highs = []
for i, row in enumerate(reader, 2):
# Ignore empty lines
if not row:
continue
# Get high column as int. If error, log and ignore
try:
high = int(row[8])
highs.append(high)
except ValueError:
print("Error line {}: {}".format(i, row))
except IndexError:
# Wrong number of columns, this file is corrupted.
print("Invalid column count line {}: {}".format(i, row))
exit(2)
print(highs)