代码之家  ›  专栏  ›  技术社区  ›  user2153235

关于整个系列中常见的数据类型的更多详细信息?

  •  1
  • user2153235  · 技术社区  · 2 年前

    我有一个数据帧列,它完全由一个公共类型组成 dict 。是否有任何方法可以查询序列类型以显示通用数据类型?它目前只告诉我它是一个对象,我理解它是一组引用。但是,如果被引用的东西在整个系列中都是相同的类型,那么了解这个事实以及特定的常见类型将是有用的。

    >>> df = pd.DataFrame([[{'c':[1,2]}],[{'d':[3,4]}]],columns=['A'])
                      A
       0  {'c': [1, 2]}
       1  {'d': [3, 4]}
    
    >>> df['A'].dtype
       dtype('O')
    
    >>> type(df['A'])
       pandas.core.series.Series
    
    1 回复  |  直到 2 年前
        1
  •  1
  •   mozway    2 年前

    一个对象系列可以包含多个python类型。如果你想测试这个,你可以 map type ,然后检查输出是否为 unique / nunique :

    df['A'].map(type).unique()
    # array([<class 'dict'>], dtype=object)
    
    df['A'].map(type).nunique()
    # 1
    

    如果您知道类型是同质的,那么只需测试第一项:

    type(df['A'].iloc[0])
    # dict