gpt4 book ai didi

python - 相当于 numpy 数组的 pandas read_sql_query?

转载 作者:行者123 更新时间:2023-12-01 00:06:20 27 4
gpt4 key购买 nike

我想使用类似于 pandas“read_sql_query”的东西,将数据库中的数据加载到 numpy 数组中,而不是 pandas 数据帧中。

在 pandas 中我使用类似的东西:

df = pd.read_sql_query(sql="select * from db;", con=con, index_col='index')

现在我需要一个像这样的函数:

A = read_sql_to_np(sql="select * from db;")

其中 A 是一个 numpy 数组。

最佳答案

任何数据帧都可以使用 to_array() 方法转换为 numpy 数组:

>>> df = pandas.DataFrame({'A': [1, 2, 3], 
'B': [1.0, 2.0, 3.0],
'C': ['a', 'b', 'c']})
>>> df.to_numpy()
array([[1, 1.0, 'a'],
[2, 2.0, 'b'],
[3, 3.0, 'c']], dtype=object)
>>> df['A'].to_numpy()
array([1, 2, 3])
>>> df[['A', 'B']].to_numpy()
array([[1., 1.],
[2., 2.],
[3., 3.]])
>>> df[['C']].to_numpy()
array([['a'],
['b'],
['c']], dtype=object)

因此,您可以简单地使用 pandas,然后从结果数据帧中提取 numpy 数组。

Parfait指出,在进行转换时必须小心数据类型。我在上面的示例中隐式地保留了这一点,但请注意第一个示例如何使用 dtype=object 生成一个数组,而第二个示例如何生成一个普通的 float 组。我认为对 numpy 中数据类型的详细讨论超出了这个问题的范围。

关于python - 相当于 numpy 数组的 pandas read_sql_query?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59951165/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com