Я загружаю некоторые файлы Excel с pandas.read_excel()
и преобразовываю в массив с .to_numpy()
. Перемотка вперед, я решил проблему, указав dtype=object
. Но все же мне интересно, что вызывает этот ответ.
Вот упрощенная версия. Вот что содержит файл Excel:
Затем я использую:
import pandas as pd
import numpy as np
data = pd.read_excel('test_file2.xlsx', sheet_name='other').to_numpy()
print(data)
И результат - строка,целое число и число с плавающей точкой.
[['true']
[0]
[4.4]]
Однако, если оба числа в Excel являются числами с плавающей запятой, как это:
Тогда этоэто результат:
[[True]
[nan]
[nan]]
Кто-нибудь может объяснить, почему во втором случае происходит такое преобразование, которое в основном приводит к потере числовых значений?