gpt4 book ai didi

python - 如何测试 pandas.Series 是否只包含特定类型(例如 int)?

转载 作者:行者123 更新时间:2023-11-28 22:17:35 25 4
gpt4 key购买 nike

我想测试 pandas.Series() 是否只包含整数。以下所有内容均无效。我更喜欢使用 isinstance() 的解决方案。

import pandas as pd
import numpy
print(isinstance(pd.Series([1, 2]).dtype, numpy.int64))
print(isinstance(pd.Series([1, 2]).dtype.type, numpy.int64))
print(pd.Series([1, 2]).dtype)
print(isinstance(pd.Series([1, 2]).dtype.type, int64))
# False
# False
# int64
# NameError: name 'int64' is not defined

我想这个问题一定已经解决了,尽管我在搜索时没有找到它。

最佳答案

如果您知道该系列只有一种数据类型,您可以这样做print(s.dtype == 'int64')

当它包含多种数据类型时,系列的数据类型将为“对象”,在这种情况下您可能需要检查每个元素是否为 int:

s = pd.Series([1,'5'])
s.apply(isinstance,args = [int])
>> 0 True
1 False
dtype: bool

s.apply(isinstance,args = [int]).all()
>> False

关于python - 如何测试 pandas.Series 是否只包含特定类型(例如 int)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51254498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com