我有一个数据帧列,data['time taken'];
02:08:00
02:05:00
02:55:00
03:42:00
01:12:00
01:46:00
03:22:00
03:36:00
Run Code Online (Sandbox Code Playgroud)
如何以分钟的形式获得输出,如下所示?
128
125
175
222
72
106
202
216
Run Code Online (Sandbox Code Playgroud)
And*_*den 11
假设这是一个字符串列,您可以使用以下str.split方法:
In [11]: df['time taken'].str.split(':')
Out[11]:
0 [02, 08, 00]
1 [02, 05, 00]
2 [02, 55, 00]
3 [03, 42, 00]
4 [01, 12, 00]
5 [01, 46, 00]
6 [03, 22, 00]
7 [03, 36, 00]
Name: time taken, dtype: object
Run Code Online (Sandbox Code Playgroud)
然后使用apply:
In [12]: df['time taken'].str.split(':').apply(lambda x: int(x[0]) * 60 + int(x[1]))
Out[12]:
0 128
1 125
2 175
3 222
4 72
5 106
6 202
7 216
Name: time taken, dtype: int64
Run Code Online (Sandbox Code Playgroud)
您可以尝试将其转换为 DatetimeIndex
In [58]: time = pd.DatetimeIndex(df['time taken'])
In [59]: time.hour * 60 + time.minute
Out[59]: array([128, 125, 175, 222, 72, 106, 202, 216], dtype=int32)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13376 次 |
| 最近记录: |