回答編集履歴
3
Update
answer
CHANGED
@@ -1,14 +1,8 @@
|
|
1
|
-
`2'40.24` というのは 2分40秒240ミリセカンドの事かと思います。`
|
1
|
+
`2'40.24` というのは 2分40秒240ミリセカンドの事かと思います。データには `NaN` が含まれているとの事ですので、以下のコードでは `NaN` を `00:00:00` に変換する様にしています。
|
2
|
+
|
2
3
|
```python
|
3
|
-
|
4
|
+
df["column_c"] = df["column_c"].apply(lambda x:
|
4
|
-
pd.to_datetime(str(x),
|
5
|
+
pd.to_datetime("0.0" if str(x) == "nan" else str(x),
|
5
|
-
format=("%S.%f" if
|
6
|
+
format=("%M'%S.%f" if "'" in str(x) else "%S.%f"),
|
6
7
|
errors='coerce').time())
|
7
|
-
|
8
|
-
print(dfx)
|
9
|
-
|
10
|
-
#
|
11
|
-
a b c
|
12
|
-
0 00:02:40.240000 00:00:46.320000 00:01:56.660000
|
13
|
-
1 00:02:00.760000 00:00:20.640000 00:00:49.330000
|
14
8
|
```
|
2
Update
answer
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
`2'40.24` というのは 2分40秒240ミリセカンドの事かと思います。`errors='coerce'` を指定する事で、パースに失敗した場合は `NaT` に変換されます。
|
2
2
|
```python
|
3
|
-
df.applymap(lambda x:
|
3
|
+
dfx = df.applymap(lambda x:
|
4
4
|
pd.to_datetime(str(x),
|
5
5
|
format=("%S.%f" if isinstance(x, float) else "%M'%S.%f"),
|
6
6
|
errors='coerce').time())
|
7
7
|
|
8
|
-
print(
|
8
|
+
print(dfx)
|
9
9
|
|
10
10
|
#
|
11
11
|
a b c
|
1
Update
answer
CHANGED
@@ -1,13 +1,14 @@
|
|
1
|
-
`2'40.24` というのは 2分40秒240ミリセカンドの事かと思います。
|
1
|
+
`2'40.24` というのは 2分40秒240ミリセカンドの事かと思います。`errors='coerce'` を指定する事で、パースに失敗した場合は `NaT` に変換されます。
|
2
|
-
|
3
2
|
```python
|
3
|
+
df.applymap(lambda x:
|
4
|
+
pd.to_datetime(str(x),
|
4
|
-
|
5
|
+
format=("%S.%f" if isinstance(x, float) else "%M'%S.%f"),
|
5
|
-
|
6
|
+
errors='coerce').time())
|
6
7
|
|
7
8
|
print(df)
|
8
9
|
|
9
10
|
#
|
10
|
-
a
|
11
|
+
a b c
|
11
|
-
0 00:02:40.240000 46.
|
12
|
+
0 00:02:40.240000 00:00:46.320000 00:01:56.660000
|
12
|
-
1 00:02:00.760000 20.
|
13
|
+
1 00:02:00.760000 00:00:20.640000 00:00:49.330000
|
13
14
|
```
|