美文网首页呆鸟译PyPython数据分析
如何让 Pandas 按数据类型选择列?

如何让 Pandas 按数据类型选择列?

作者: 呆鸟的简书 | 来源:发表于2021-05-07 17:36 被阅读0次

Pandas 百问百答第 014 篇。

有时候,df 里包含了不同的数据类型,比如,文本、日期、整数、小数,如果需要筛选出某一类型的几列,怎么整?

呆鸟也不卖关子,直接说, pandas 的 df 提供了 select_dtypes 函数,可以按数据类型选择 df 的列。该函数包含 includeexclude 参数:

  • include 表示包含哪种类型,输出结果是包含该类型的 df;
  • exclude 表示排除哪种类型,输出结果是不包含该类型的 df;
  • 包含或排除的类型可以是多种,用列表显示,如 include=['float64','int64']

示例代码:

df = pd.DataFrame({'a': [1, 2] * 3,
                   'b': [True, False] * 3,
                   'c': [1.0, 2.0] * 3})

# 输出包含 bool 数据类型的列
df.select_dtypes(include='bool')

# 输出包含小数数据类型的列
df.select_dtypes(include=['float64'])

# 输出排除整数的列
df.select_dtypes(exclude=['int64'])

数据类型说明

  • 选择所有数字类型的列,用 np.number'number'
  • 选择字符串类型的列,必须用 object,注意,这将返回所有数据类型为 object 的列
  • 选择日期时间类型的列,用np.datetime64'datetime''datetime64'
  • 选择 timedelta 类型的列,用np.timedelta64'timedelta''timedelta64'
  • 选择 category 类型类别,用 'category'
  • 选择 datetimetz 类型的列,用'datetimetz''datetime64[ns, tz]'

好了,本篇比较简单,但也容易让人忽略,现在你知道怎么按数据类型选择 df 中的列了吗?

本文译自 pandas 官档

相关文章

网友评论

    本文标题:如何让 Pandas 按数据类型选择列?

    本文链接:https://www.haomeiwen.com/subject/igzsdltx.html