当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark DataFrame.select_dtypes用法及代码示例


本文简要介绍 pyspark.pandas.DataFrame.select_dtypes 的用法。

用法:

DataFrame.select_dtypes(include: Union[str, List[str], None] = None, exclude: Union[str, List[str], None] = None) → pyspark.pandas.frame.DataFrame

根据列 dtypes 返回 DataFrame 列的子集。

参数

include, exclude标量或类似列表

要包含/排除的数据类型或字符串的选择。必须至少提供这些参数之一。它还采用 Spark SQL DDL 类型字符串,例如‘string’ 和‘date’。

返回

DataFrame

帧的子集,包括 include 中的 dtype,不包括 exclude 中的 dtype。

抛出

ValueError
  • 如果includeexclude都为空

    >>> df = ps.DataFrame({'a': [1, 2] * 3,
    ...                    'b': [True, False] * 3,
    ...                    'c': [1.0, 2.0] * 3})
    >>> df.select_dtypes()
    Traceback (most recent call last):
    ...
    ValueError: at least one of include or exclude must be nonempty
  • 如果 includeexclude 有重叠的元素

    >>> df = ps.DataFrame({'a': [1, 2] * 3,
    ...                    'b': [True, False] * 3,
    ...                    'c': [1.0, 2.0] * 3})
    >>> df.select_dtypes(include='a', exclude='a')
    Traceback (most recent call last):
    ...
    ValueError: include and exclude overlap on {'a'}

注意

  • 要选择日期时间,请使用 np.datetime64'datetime''datetime64'

例子

>>> df = ps.DataFrame({'a': [1, 2] * 3,
...                    'b': [True, False] * 3,
...                    'c': [1.0, 2.0] * 3,
...                    'd': ['a', 'b'] * 3}, columns=['a', 'b', 'c', 'd'])
>>> df
   a      b    c  d
0  1   True  1.0  a
1  2  False  2.0  b
2  1   True  1.0  a
3  2  False  2.0  b
4  1   True  1.0  a
5  2  False  2.0  b
>>> df.select_dtypes(include='bool')
       b
0   True
1  False
2   True
3  False
4   True
5  False
>>> df.select_dtypes(include=['float64'], exclude=['int'])
     c
0  1.0
1  2.0
2  1.0
3  2.0
4  1.0
5  2.0
>>> df.select_dtypes(exclude=['int'])
       b    c  d
0   True  1.0  a
1  False  2.0  b
2   True  1.0  a
3  False  2.0  b
4   True  1.0  a
5  False  2.0  b

也可以使用 Spark SQL DDL 类型字符串。

>>> df.select_dtypes(exclude=['string'])
   a      b    c
0  1   True  1.0
1  2  False  2.0
2  1   True  1.0
3  2  False  2.0
4  1   True  1.0
5  2  False  2.0

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.DataFrame.select_dtypes。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。