Я использую пакет reticulate
R и хотел бы получить функцию Python в R, которая возвращает простой pandas
фрейм данных.Кажется, существует проблема с преобразованием фрейма данных Pandas в фрейм данных R при этом в ОС Windows 10 (в отличие от MasOS с версиями R и python одинаковыми).Следующий минимальный пример иллюстрирует проблему.
Функция python выглядит следующим образом:
def func():
import pandas as pd
d = {'A' : pd.Series([1., 2., 3.]),
'B' : pd.Series(['x', 'y', 'z'])}
df = pd.DataFrame(d)
return df
Когда я запускаю следующий код R в MacOS, он возвращает нормальный фрейм данных R:
> library('reticulate')
> source_python('func.py')
> df = func()
> df
A B
1 1 x
2 2 y
3 3 z
Однако, когда я запускаю тот же код в операционной системе Windows 10, я получаю следующий вывод:
> df
A B
1 <environment: 0x000000001be35ed0> <environment: 0x000000001bfb33a8>
2 <NA> <NA>
3 <NA> <NA>
Warning message:
In format.data.frame(x, digits = digits, na.encode = FALSE) :
corrupt data frame: columns will be truncated or padded with NAs
Кто-то знает, в чем может быть проблема, и если это прямо иликосвенно связаны с ОС вообще?