python - 如何比较 CSV 文件的 2 列之间的时间增量?
问题描述
我有 2 行数据,如下所示(第 8 行和第 9 行)......
2018-01-03T10:14:32.000Z
2018-01-03T09:40:35.000Z
2018-01-03T10:17:13.000Z
2018-01-03T10:00:39.000Z
2018-01-03T10:16:53.000Z
2018-01-03T09:54:24.000Z
2018-01-03T10:18:37.000Z
2018-01-03T10:19:54.000Z
2018-01-03T09:52:40.000Z
2018-01-03T10:14:49.000Z
2018-01-03T10:16:35.000Z
代码:
df = pd.read_csv('Plaku_City_Service_Requests_in_2018.csv',
usecols = [8,9],
names = ['add', 'fix'])
df['delta'] = df['add'] - df['fix']
我收到错误
此 CSV 文件中有 330,000 个条目。我如何找到这两列之间的时间增量?
我将这两列存储在变量添加和修复中..无法弄清楚如何比较。
任何帮助都会很棒,谢谢!
解决方案
将 CSV 中的两列读取到一个 DataFrame 中似乎是合适的,而不是两个单独的:
df = pd.read_csv('2018.csv', usecols=[8, 9], names=['add', 'fix'])
如果 Pandas 正确推断出您的数据类型是日期时间,那么查找增量很简单:
df['delta'] = df['add'] - df['fix']
但是,如果它们被推断为字符串,则需要在减法之前显式转换为 datetime 对象:
df['delta'] = pd.to_datetime(df['add']) - pd.to_datetime(df['time'])
推荐阅读
- javascript - 图像坐标随浏览器宽度变化而变化
- spring - 如何创建只监听 Redis 通道和 dispatch 事件的 Spring Boot 应用?
- r - 时区转换:无效的 'tz' 值 - R
- c# - 如何在 C# 中直接写入内存
- typescript - React-Native undefined 无法解析模块
- php - 如何使用 $.post 将带有 Ajax 的输入类型文件中的图像文件传递给 PHP
- tensorflow - 在云端训练大型数据集(例如:30GB+)?
- jboss - 带有外部 Jar 的 Keycloak 自定义 SPI 部署
- ssh - SSH“kex_exchange_identification:读取:对等方重置连接”
- c# - UTF-8 数据在使用 Methodinfo.invoke 方法从 c++ 调用 c# 方法时丢失