在Python 3中使用子字符串函数时出现TypeError

在Python 3中使用子字符串函数时出现TypeError,python,csv,pandas,substring,Python,Csv,Pandas,Substring,我编写了一个函数来打开一个csv,查找列中的最大数据量,然后子字符串只取最后4位。它工作了将近两个小时,效果非常好。但突然失败,出现错误TypeError:unorderable types:float()>str()相关代码是: import pandas mycsvfile = 'filepath' df = pandas.read_csv(mycsvfile, sep=",", usecols=['ColumnName']) start_num=int(max(df['ColumnNam

我编写了一个函数来打开一个csv,查找列中的最大数据量,然后子字符串只取最后4位。它工作了将近两个小时,效果非常好。但突然失败,出现错误
TypeError:unorderable types:float()>str()
相关代码是:

import pandas

mycsvfile = 'filepath'
df = pandas.read_csv(mycsvfile, sep=",", usecols=['ColumnName'])
start_num=int(max(df['ColumnName'])[-4:])+1
列中的值的格式为XXXX11XX1111,其中X为字母,1为数字。我只想提取此字段的最后四位数字


让我困惑的是,它在1000多张唱片上运行得非常好&突然开始无缘无故地失败。我甚至删除了记录并启动了一个新的,但仍然失败。

列中的空单元格导致了该问题。用适当的值填充它解决了问题。

类型错误是由
max(df['ColumnName'])
表达式而不是切片引起的。想必您的列包含浮点值。哎呀!在几千人的名单中,我没有看到一个空的牢房。现在找到了。替换为实际值&现在可以了。谢谢@MartijnPietersClose“一个无法再重现的问题”?或者你应该发布你自己的自我认可的答案。。。