小编Who*_*ack的帖子

在pandas df中选择字符串列(相当于df.select_dtypes)

给定df具有不同数据类型的 Pandas ,df.select_dtypes对于仅保留所需列或删除特定应用程序不需要的列非常有用。

但是,似乎无法string使用这种方法来解决dtype。

文档(强调我的):

ValueError
  如果 include 和 exclude 都为空
  如果 include 和 exclude 有重叠元素
  如果传入任何类型的字符串 dtype。

要选择字符串,您必须使用对象 dtype,但请注意,这将返回所有对象 dtype 列

实际上, usingdf.select_dtypes(exclude=['str'])会引发错误(尽管它是 aTypeError而不是ValueErrordocs 声称的 a)并且 usingdf.select_dtypes(exclude=['object'])会删除所有object列,而不仅仅是string列。


给出df这样的:

df = pd.DataFrame({'int_col':[0,1,2,3,4],
                   'dict_col':[dict() for i in range(5)],
                   'str_col':list('abcde')})
Run Code Online (Sandbox Code Playgroud)

并考虑到

df.dtypes
Run Code Online (Sandbox Code Playgroud)

object两个str_coldict_col


排除或包含所有字符串列的最佳方法是什么?

python dataframe pandas

6
推荐指数
1
解决办法
6845
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1