Skip to main content
 首页 » 编程设计

python之找出对象列是否在 Pandas 中具有多种数据类型的最快和/或最惯用的方法是什么

2025年05月04日18birdshome

我有一个包含这样一列的数据框:

df.Chromosome 
# 0        1 
# 1        1 
# 2        1 
# 3        1 
# 4        1 
#         .. 
# 94391    Y 
# 94392    Y 
# 94393    Y 
# 94394    Y 
# 94395    Y 
# Name: Chromosome, Length: 94396, dtype: object 

通过执行 df.Chromosome.apply(type).drop_duplicates() 我发现它包含两种类型的数据:

0        <class 'int'> 
65536    <class 'str'> 
Name: Chromosome, dtype: object 

是否有一种更快、更惯用的方法来检查列是否由多个数据类型组成?

请您参考如下方法:

我认为你的解决方案很好,另一种选择:

df.Chromosome.map(type).unique() 

set(df.Chromosome.map(type)) 

也可以先删除值中的重复项以提高性能:

df.Chromosome.drop_duplicates().apply(type).drop_duplicates()