Python 如何检查熊猫系列是否只是初始化(即空)或定义?
我想区分一个仅仅是初始化的熊猫系列和一个已经定义并具有值的熊猫系列。我尝试了下面的代码,但不起作用Python 如何检查熊猫系列是否只是初始化(即空)或定义?,python,pandas,Python,Pandas,我想区分一个仅仅是初始化的熊猫系列和一个已经定义并具有值的熊猫系列。我尝试了下面的代码,但不起作用 import pandas as pd labels = pd.Series print len(labels) print labels.empty 我得到: TypeError:类型为“type”的对象没有len() 属性对象 然后,我定义了序列: labels = pd.Series([0, 1, 1]).unique() print labels.empty print len(la
import pandas as pd
labels = pd.Series
print len(labels)
print labels.empty
我得到:
- TypeError:类型为“type”的对象没有len()
- 属性对象
labels = pd.Series([0, 1, 1]).unique()
print labels.empty
print len(labels)
这次我得到:
- 二,
- AttributeError:'numpy.ndarray'对象没有属性'empty'
我如何检查序列是否为空?返回值为真或假?首先,您引用了方法
序列
:
In [31]:
labels = pd.Series
print(type(labels))
labels = pd.Series
print(type(labels))
<class 'type'>
在第二个实例中,
unique
返回一个numpy数组,该数组没有方法空
,而pandas系列
则返回
In [38]:
labels = pd.Series([0, 1, 1]).unique()
type(labels)
Out[38]:
numpy.ndarray
您可以使用size
属性检查尺寸:
In [42]:
labels = pd.Series([0, 1, 1]).unique()
print(labels.size)
2
在第一个实例中,您引用了方法
Series
,这就是为什么会出现与空序列不同的错误:labels=pd.Series()
将输出预期的行为HI,我仍然得到AttributeError:'numpy.ndarray'对象没有属性'empty',当序列已定义时,而不是False。用代码更新你的问题,而不是注释错误,这样就不会有歧义。在第二个实例unique
返回一个numpy数组时,这没有方法空序列doesAh好的,我将标签重新定义为labels=pd.Series(labels)
,这是有效的。谢谢
In [42]:
labels = pd.Series([0, 1, 1]).unique()
print(labels.size)
2