python - 如何检查 Pandas DataFrame 中的列值类型
问题描述
我可以使用 pandas DataFrame 来检查列df.dtypes
类型df
。但是,我的问题有点不同。我有以下数据框:
col1 col2
0 <class 'pandas._libs.tslibs.timestamps.Timestamp'>
1 <class 'pandas._libs.tslibs.timestamps.Timestamp'>
2 <class 'float'>
3 NaN
4 <class 'pandas._libs.tslibs.timestamps.Timestamp'>
df["col2"].dtypes
回报object
。_
我需要创建一个新列is_timestamp
来检查col2
值是否是熊猫时间戳。为了测试,我尝试了以下代码:
isinstance(df_viz["col2"][0], pd._libs.tslibs.timestamps.Timestamp)
但它返回False
。
预期输出:
col1 col2 col3
0 <class 'pandas._libs.tslibs.timestamps.Timestamp'> Yes
1 <class 'pandas._libs.tslibs.timestamps.Timestamp'> Yes
2 <class 'float'> No
3 NaN No
4 <class 'pandas._libs.tslibs.timestamps.Timestamp'> Yes
解决方案
尝试:
df_viz['col3']=(df_viz.col2.transform(lambda x:
np.where(x==pd._libs.tslibs.timestamps.Timestamp,'Yes','No')))
推荐阅读
- java - Java 并发实践“清单 7.1。使用 volatile 字段保持取消状态。”。同步可见性?
- c - C中的错误“表达式必须具有指向对象类型的指针”
- node.js - 将收到的“.xlsx”文件从 Laravel 应用程序传递到 Nextjs 前端 ui
- java - 用于电子邮件搜索的 ElasticSearch AnalyzeRequest 对象
- javascript - 在 JS 中强制百分比编码
- machine-learning - 文本数据的监督学习
- javascript - 无法理解为什么外部 Promise 无法解决
- javascript - IE11 对象不支持属性或方法'Symbol(Symbol.iterator)_a.2p3bca3ct9h
- linux - 当我使用 scp 复制letsencrypt文件夹时权限被拒绝
- r - 统计 ABC 的 XXXX 后查询日期的所有条目必须除以它们的用途,groupby() 和数据的详细信息