python - Pandas - 读取 csvs 时忽略格式化的数据类型
问题描述
我有一个非常简单的函数,旨在解析和重新格式化 CSV 文件:
def parseFile(path, cols=[]):
"""
Parse futures file given in path and re-index, only keep cols provided
in cols.
-------------------
Usage:
data = parseFileCSI('C:\\data\\66\\ad_9609', ['Open', 'Volume'])
"""
filename = path.split('\\')[-1].split('.')[0]
df = pd.read_csv(path, engine='c')
df['ID'] = filename
#align column names with TRTH
df.rename(columns={'Fut Expiration Date':'ExpirationDate'}, inplace=True)
df.set_index(['ID', 'ExpirationDate'], inplace=True)
#keep specified columns
if cols != []:
df = df[cols]
return df
但是,在 csv 文件中,到期日期被重新格式化为我不希望的格式,如下所示:
我系统地阅读了数千个这样的 csv,因此浏览并更改所有这些 csv 是不可行的。如何解析这些日期字符串 fe'01-Apr-96'
并将它们转换为有效日期?
解决方案
推荐阅读
- php - 为什么实例化后我的 php 对象成员变量为空?
- python - 在不使用 item.py 的情况下无法通过管道重命名下载的图像
- regex - 正则表达式捕获组为空,除非我使用 [QSA] 标志
- logging - 使用 syslog.conf 和 asl.conf 转移日志
- c# - 单例实例“ConversationManager”已销毁。返回空
- laravel - 使用 Laravel Cashier 和多对多关系插入记录时出错
- php - Apache vhost 与 CI .htaccess 冲突
- java - 使用 Python 获取 java 的全局击键
- android - 使用 UIAutomator2 工具实现 Android 应用自动化
- python - 为什么这个 Keras OneHot 层实现与 OneHot 训练数据不同?