我需要遍历大文件并指定数据类型:
UPDATE FundDetails
SET Column1 =
CASE
WHEN (funddetails.Industry * Industrydetail.price-Avg(funddetails.Industry) OVER (partition BY t2.state )) <= -5
THEN '50'
ELSE '100'
END
FROM FundDetails t2
INNER JOIN IndustryDetails t1 ON t1.State = t2.State
最近,格式发生了变化。最后一行现在包含单词data = pd.read_table(file, chunksize=50000, dtype=dtype)
for df in data:
...
。当我指定数据类型时,这当然会导致错误:
END
迭代文件时是否有可能将最后一行摘出?我试过了:
ValueError: invalid literal for int() with base 10: 'END'
但它告诉我data = pd.read_table(file, chunksize=50000, skipfooter=1, convertes=dtype, engine='python')
for df in data:
...
不支持迭代:
skip_footer
一个明显的解决方案是将所有内容读作字符串,检查最后一行,删除它,然后才设置数据类型。是否有更优雅,更快的替代方案?
以下是评论中各种版本的最小工作示例:
ValueError: skip_footer not supported for iteration