Testuję DuckDB 0.7.0 i dostaję nieoczekiwany błąd przy prostej funkcjonalności:
DataFrame:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 63445 entries, 0 to 63444
Data columns (total 15 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 ID 63445 non-null int64
1 PARENT_ID 63445 non-null int64
2 TYPE 63445 non-null object
3 PARENT_TYPE 63445 non-null object
4 _TEXT 13230 non-null object
5 ATTR1 57175 non-null object
6 ATTR2 55024 non-null object
7 ATTR3 30547 non-null object
8 ATTR4 30502 non-null object
9 ATTR5 30502 non-null object
10 ATTR6 0 non-null object
11 ATTR7 0 non-null object
12 ATTR8 0 non-null object
13 ATTR9 1 non-null object
14 ATTR10 1 non-null object
dtypes: int64(2), object(13)
memory usage: 7.3+ MB
Próbuję zrobić z DF tabelę w DuckDB
conn.sql('create table foobar as select * from df')
I dostaję:
duckdb.InvalidInputException: Invalid Input Error: Failed to cast value: Unimplemented type for cast (VARCHAR -> NULL)
Po wywalaniu ATTR9 i ATTR10 działa ok.
Po wypełnieniu ATTR9,ATTR10 (fillna('*')
) działa ok.
Ktoś spotkał się z podobnym zachowaniem w DuckDB? Ktoś używa produkcyjnie tę bazę?