- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须比较两个数据源以查看所有行中的相同记录是否相同。一个数据源来自 Excel 文件,另一个来自 SQL 表。我尝试使用 DataFrame.equals()
就像我过去一样。
然而,这个问题是由于讨厌的数据类型问题。尽管数据看起来相同,但数据类型正在使 excel_df.loc[excel_df['ID'] = 1].equals(sql_df.loc[sql_df['ID'] = 1])
返回 False
.这是来自 pd.read_excel()
的数据类型示例:
COLUMN ID int64
ANOTHER Id float64
SOME Date datetime64[ns]
Another Date datetime64[ns]
pd.read_sql
的相同列:
COLUMN ID float64
ANOTHER Id float64
SOME Date object
Another Date object
converters
来自
pd.read_excel()
的争论匹配 SQL。或者也做
df['Column_Name] = df['Column_Name].astype(dtype_here)
但我正在处理很多列。有没有更简单的方法来检查所有列的值?
pd.read_sql()
没有像
converters
这样的东西但我正在寻找类似的东西:
df = pd.read_sql("Select * From Foo", con, dtypes = ({Column_name: str,
Column_name2:int}))
最佳答案
怎么样
excel_df = pd.read_excel(...)
sql_df = pd.read_sql(...)
# attempt to cast all columns of excel_df to the types of sql_df
excel_df.astype(sql_df.dtypes.to_dict()).equals(sql_df)
关于python - Pandas read_sql 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46594631/
我通过 Pandas 的 read_sql 和外部应用程序 (DbVisualizer) 运行完全相同的查询。 DbVisualizer 返回 206 行,而 pandas 返回 178 行。 我曾尝
我正在尝试做异步等价物 engine = create_engine('sqlite:///./test.db') stmt = session.query(MyTable) data = pd.re
我必须比较两个数据源以查看所有行中的相同记录是否相同。一个数据源来自 Excel 文件,另一个来自 SQL 表。我尝试使用 DataFrame.equals() 就像我过去一样。 然而,这个问题是由于
我们正在使用 pandas read_sql用于检索前端触发的查询结果。为了简化用例,假设用户给出一些参数(表名、子句等),然后我们将其转换为 sql,然后使用 read_sql 执行它。pandas
我有一个数据库接口(interface)类,它从 pandas pd.read_sql 函数返回查询。我想将 pd.read_sql 参数传递给该方法,以便在调用函数时可以使用它,如下所示: impo
我有一个字段月年,格式为 datetime64[ns] 。 如何在 where 子句中使用此字段来获取滚动 12 个月的数据(过去 12 个月的数据)。 以下查询不起作用,但我想要过滤 12 个月数据
我正在遍历 pd.read_sql(query, engine, chunksize=10000) 的结果 我正在使用 engine (sqlalchemy) 设置为 echo=True以便它打印出
我可以访问 MS SQL SERVER 数据库,从中检索数据进行分析。我使用 Mac,因此可以使用 Navicat Essentials for SQL Server 访问数据库。这真的很好用。但是,
我正在尝试使用以下代码通过 python 从 sql 检索数据: query = ("SELECT stuff FROM TABLE WHERE name like %%(this_name)s%")
我试图在两个不同表的比较列之后插入一个标志(匹配/不匹配)。我能够比较两个 mysql 表列但不知道如何插入标志列并获取状态(匹配/不匹配) 下面是一个例子,考虑2个mysql表: 选项卡1: ema
我正在尝试将三个不同 MySQL 表中的几列读取到三个不同的数据帧中。 从数据库中读取并不需要很长时间,但实际上将它们放入数据帧中却相当慢。 start_time = time.time() prin
我有一个数据集 (14gb),我正在尝试使用 chunksize 从 MySQL 中提取数据。但是,我继续收到以下错误: TypeError: read_sql_query() got an unex
我正在使用 pyodbc 和 pandas read_sql 从 Oracle 数据库中提取数据。 当我输入这一行时我没有看到任何错误 df = pd.read_sql(sql_str,cnxn,ch
这是错误还是我做错了什么?我创建了一个 df,将它放在一个 sql 表中,df 和表中有一个带点的列。现在当我从 sql 表中读取 df 时,列名不一样。我写了这段代码是为了让人们可以测试它。 imp
import pandas as pd q = """ select * from tbl where metric = %(my_metric)s ;
我使用 pandas 从 Vertica 数据库读取数据: pd.read_sql(query, self._conn) 但是失败了 UnicodeDecodeError:“utf-8”编解码器无法解
我需要进一步处理 MySQL 查询的结果集作为数据框。 SQL 表包含大约 200 万行和 12 列(数据大小 = 180 MiB)。我正在运行 8 GB 内存的 OS X 10.9。 pandas.
我有一个用户定义的函数,它使用 pymysql 连接到 mysql 数据库,然后查询数据库并将结果读入 Pandas 数据帧。 import pandas as pd import pymysql i
有没有关于如何在 Pandas 中通过 SQL 查询传递参数的示例? 特别是我使用 SQLAlchemy 引擎连接到 PostgreSQL 数据库。到目前为止,我发现以下工作: df = psql.r
我将 MySQL 与 pandas 和 sqlalchemy 结合使用。但是,它非常慢。一个简单的查询,因为这个查询需要超过 11 分钟才能在具有 1100 万行的表上完成。什么行动可以改善这种表现?
我是一名优秀的程序员,十分优秀!