如何解决Pandasql:Python int 太大而无法转换为 SQLite INTEGER
当我运行我的代码时,我收到以下“Python int 太大而无法转换为 sqlite INTEGER”错误。我是 psql 的初学者。
代码:
import pandas as pd
import numpy as np
import pandasql as psql
from pandasql import sqldf
T900_file = r'K:\myfile.xlsx'
df1 = pd.read_excel(T900_file)
T1000 = psql.sqldf("""Select Date,UP_Cust_Num,UP_Cust_Name,sum(Utilized_FVO) as FVO,avg(UP_Generation) as UP_Gen
from df1
Group by Date,UP_Cust_Name""")
解决方法
我认为这意味着你有一个溢出错误,所以它打破了 int 的边界。
,这似乎是df1中数据类型的问题。如果你跑
df1.info()
您可能会看到一些数值类型为 Int64
;如果是这种情况,那么您可以将这些值转换为较小的整数(提供适合新数据类型的值)。为了转换为较小的整数,您可能需要执行以下操作:
df1["Utilized_FVO"] = df["Utilized_FVO"].astype(np.int8)
df1["UP_Generation"] = df["UP_Generation"].astype(np.int8)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。