python - 列出数据框列中存在的所有数据类型
问题描述
如何列出我的数据框df的列名称中存在的所有数据类型?
Name
1.0
XCY
有些可能是字符串,有些可能是浮点数等。
解决方案
尝试使用map
,agg
或apply
:
>>> df['Name'].map(type).value_counts()
<class 'float'> 1
<class 'str'> 1
Name: Name, dtype: int64
>>> df['Name'].agg(type).value_counts()
<class 'float'> 1
<class 'str'> 1
Name: Name, dtype: int64
>>> df['Name'].apply(type).value_counts()
<class 'float'> 1
<class 'str'> 1
Name: Name, dtype: int64
>>>
要获取实际的类型名称,请使用:
>>> df['Name'].map(lambda x: type(x).__name__).value_counts()
float 1
str 1
Name: Name, dtype: int64
>>>
您可以更改map
为apply
oragg
并且代码仍将按预期工作。
我type.__name__
用来获取类型名称,更多关于它的文档在这里:
类、函数、方法、描述符或生成器实例的名称。
推荐阅读
- python - If-Else 条件创建新列
- linux - 有没有办法可以将挂载点文件从 Windows 主机绑定到 linux 容器?
- django - 您如何调用自定义管理员的默认添加用户表单
- r - R创建一个缺失值的p值矩阵
- c# - Mutex.ReleaseMutex() 即使同一个线程拥有它也会产生同步错误
- php - 每行的while循环中的php变量值
- .htaccess - Mod-rewrite 规则,它只获取 = 之后的 URL 部分
- elasticsearch - Flink 没有向 Elasticsearch 添加任何数据,但没有错误
- python - 如何轻松地从 django 视图传递到 django-rest-framework 视图
- java - Java 13:为什么缺少 javaFX 运行时组件?