如何在 PyExasol 中指定数据类型 export_to_pandas
How to specify data type in PyExasol export_to_pandas
如何在 export_to_pandas API 中传递数据类型参数。我可以将列名更改为小写吗?
from pyexasol import ExaConnection con = ExaConnection(dsn=dns, user=user, password=password) con.execute('OPEN SCHEMA SCHEMATEST1')
data = con.export_to_pandas('select * from TABLETEST1')
您可以指定用于 pandas.read_csv
的任何参数,并使用 callback_params
参数传递它。
例如:
callback_params = {
'names': ['A', 'B', 'C'],
'header': 0,
'dtype': {'A': numpy.float64, 'B': numpy.int32, 'C': 'Int64'}
}
data = con.export_to_pandas('select * from TABLETEST1', callback_params=callback_params)
请注意,列名实际上在 Exasol 中以大写形式存储。您可以使用连接选项 lower_ident=True
将普通 .execute()
小写,但它不适用于 .export_to_pandas
。唯一的方法是手动指定列名称或稍后修改每个名称。
如何在 export_to_pandas API 中传递数据类型参数。我可以将列名更改为小写吗?
from pyexasol import ExaConnection con = ExaConnection(dsn=dns, user=user, password=password) con.execute('OPEN SCHEMA SCHEMATEST1')
data = con.export_to_pandas('select * from TABLETEST1')
您可以指定用于 pandas.read_csv
的任何参数,并使用 callback_params
参数传递它。
例如:
callback_params = {
'names': ['A', 'B', 'C'],
'header': 0,
'dtype': {'A': numpy.float64, 'B': numpy.int32, 'C': 'Int64'}
}
data = con.export_to_pandas('select * from TABLETEST1', callback_params=callback_params)
请注意,列名实际上在 Exasol 中以大写形式存储。您可以使用连接选项 lower_ident=True
将普通 .execute()
小写,但它不适用于 .export_to_pandas
。唯一的方法是手动指定列名称或稍后修改每个名称。