• .name为普通属性,返回Index的名字
      • .values/._valuesproperty属性,返回Index的内部数据的视图
      • ._data为普通属性,返回Index的内部数据 Index_data1 Index_data3
      • .shapeproperty属性,返回内部数据的形状 Index_shape
      • ._engine为标签映射管理器,它负责管理label和下标之间的映射
      • ObjectEngine对象使用一个哈希表对象PyObjectHashTable对象(由ObjectEngine对象的.mmaping属性给出,该属性是一个getset_descriptor)将标签映射到其对应的整数下标的。 Engine_mapping
    1. MultiIndex的结构如图所示

      • .name为普通属性,返回MultiIndex的名字。同Index

      • .values/._valuesproperty属性,返回MultiIndex的内部数据的视图。同Index

      • .shapeproperty属性,返回内部属性的形状 。同Index
      • .labelsproperty属性,它返回一个FrozenList(不可变列表),列表中存储每一级的label对应的下标(也就是创建MultiIndex时传入的参数),以FrozenNDArray的数据类型。 MultiIndex_labels
      • .levelsproperty属性,它返回一个FrozenList(不可变列表),列表中存储每一级的label(也就是创建MultiIndex时传入的levels参数),以Index的数据类型。
    2. Seris的结构如图所示(实线为普通属性,虚线为property属性或者getset_descriptor): Series

      • ._name为普通属性,返回Seris的名字;.nameproperty属性,返回的也是Seris名字 Series_name2
      • .dtype/.dtypesproperty属性,返回Series的数据类型。 Series_dtype2
      • .ftype/ftypesproperty属性,返回一个字符串,说明Series是否稀疏数据。(二者返回的字符串的值相同,但不是同一个字符串对象) Series_ftype2
      • .values/._valuesproperty属性,返回Series的内部数据的视图 Series_values2
      • .index为普通属性,返回Series的索引
      • .shapeproperty属性,返回Series的数据的形状 Series_shape
      • ._data为普通属性,它返回的是一个SingleBlockManager对象,该对象负责管理内部数据。
      • SingleBlockManager.shape属性为property属性,返回内部数据的形状 SingleBlockManager_shape
      • IntBlock的属性为普通属性,它返回内部数据:一个ndarray
      • IntBlock.shape属性为property属性,它返回内部数据的形状 IntBlock_shape
    3. DataFrame的结构如图所示(实线为普通属性,虚线为property属性或者getset_descriptor):

      • .index/columns属性都为普通属性,它们返回的都是一个Index对象,参考SeriesDataFrame_index_columns

      • .dtypes属性为property属性,给出了每列的数值类型。它返回的是一个Series。并且没有.dtype属性,这一点与Series不同。

      • .values/._values/.shape属性都为property属性,参考SeriesDataFrame_values_shape

      • ._data属性为普通属性,它返回的是一个BlockManager对象,该对象负责管理内部数据。该对象的.block属性(普通属性)返回一个列表,该列表里面有多个元素。 DataFrame尽量用一个数组保存类型相同的列。

      • 每个元素都为一个xxBlock对象。如IntBlock/FloatBlock...

        • 一个xxBlock 可能存储多个列的数据(这些列的数据都是同一个类型)
      • xxBlock对象的.values属性(普通属性)就是存储的某个列(或者某些类型相同的列)的内部数据,一个ndarray

      • .blocks属性为property属性。该属性返回一个字典,该字典的键为不同的数值类型,该字典的值为该数值类型的数值组成的DataFrame