Pandas может получить только верхний индекс (по любой причине), а не фактическое значение, если вы напечатаете все df1 и проверите столбец Capacity, вы увидите, что некоторые из значений - [1], [2]и т. д. (если у них есть сноски) и NaN в противном случае.
Возможно, вы захотите изучить альтернативы извлечения данных или самостоятельной очистки данных с помощью BeautifulSoup, поскольку Pandas ищет и, следовательно, возвращает неправильные данные.