python-3.x - 在 Pandas 中 concat() 之后,新的 DF 缺少“00”
问题描述
我遇到了这个问题:
在网页抓取(bs4)之后,我现在有两个 Excel 文件:一切正常。当我 concat() 甚至只是附加熊猫时,我得到“Major-Excel”。不幸的是,在“EAN”列中,许多行在开头显示缺少“0”甚至“00”。例如:
Product 1: 36073...
Product 2: 883...
Product 3: 7370...
它应该是这样的:
Product 1: 36073...
Product 2: 00883...
Product 3: 07370...
此问题仅在 ean 以“0”或“00”开头时发生。此外,我还检查了我想要 concat() 的单个 Excel 文件:“0”也在那里,所以只有当我想将这两个文件放入 1 个文件时才会出现这个问题。
我实际上只是使用这个标准脚本:
d = pd.read_excel('one.xlsx')
d1 = pd.read_excel('two.xlsx')
three = pd.concat([d, d1])
three.to_excel('major.xlsx')
有人遇到过同样的问题吗?
谢谢和最好的问候!
解决方案
也许列类型默认为整数并删除前导 0。在连接之前将列声明为 varchar?
d = pd.read_excel('one.xlsx', converters={'EAN':str})
推荐阅读
- .net - 在 Ubuntu 20.04 上的 Wasm 项目上构建失败
- python-3.x - Django Rest:AssertionError:无法将唯一查询与非唯一查询组合
- python - 遵循策略模式;授予对父属性/方法的接口访问权限
- android - 带有 github 操作的 android
- azure-functions - 使用 Azure 数据工厂将文件从 FTP 复制到 ADLS
- android - API.java.lang.IllegalStateException:应为 BEGIN_OBJECT,但在第 1 行第 56 列为 STRING
- python - Python:我遇到了 pandas 的一些问题(元组索引必须是整数或切片,而不是 str)
- python - django:如何将 StreamingHttpRespomse 显示为视频?
- ubuntu-18.04 - 将 10.20.20.1 网络更改为我的 VMware 网络
- android - 当 targetSdkVersion = 30 时,Android 11 之前的包可见性