回答編集履歴
1
出力の間違いを修正
answer
CHANGED
@@ -2,12 +2,17 @@
|
|
2
2
|
日時が文字列でもDatetime型でも同じ方法で可能です。
|
3
3
|
Start_datetimeがすでに昇順に並んでいるなら、ソートの行は不要です。
|
4
4
|
|
5
|
+
出力が違っていたので回答を修正しました。
|
6
|
+
|
5
7
|
```python
|
6
8
|
import pandas as pd
|
7
9
|
df = pd.DataFrame(result, columns = ["Start_datetime", "End_datetime", "Item"])
|
8
10
|
df = df.sort_values("Start_datetime")
|
11
|
+
df2 = df.copy()
|
9
|
-
|
12
|
+
df2["End_datetime"] = df["Start_datetime"].shift(-1)
|
13
|
+
df2["Start_datetime"] = df["End_datetime"]
|
10
|
-
|
14
|
+
df3 = df2.iloc[:-1,:]
|
15
|
+
print(df3)
|
11
16
|
```
|
12
17
|
|
13
18
|
実行例
|
@@ -17,10 +22,12 @@
|
|
17
22
|
>>> import pandas as pd
|
18
23
|
>>> df = pd.DataFrame(result, columns = ["Start_datetime", "End_datetime", "Item"])
|
19
24
|
>>> df = df.sort_values("Start_datetime")
|
25
|
+
>>> df2 = df.copy()
|
20
|
-
>>>
|
26
|
+
>>> df2["End_datetime"] = df["Start_datetime"].shift(-1)
|
27
|
+
>>> df2["Start_datetime"] = df["End_datetime"]
|
21
|
-
>>>
|
28
|
+
>>> df3 = df2.iloc[:-1,:]
|
22
|
-
>>> print(
|
29
|
+
>>> print(df3)
|
23
30
|
Start_datetime End_datetime Item
|
24
|
-
0 2021/3/1
|
31
|
+
0 2021/3/1 14:00:00 2021/3/1 16:00:00 Apple
|
25
|
-
1 2021/3/1
|
32
|
+
1 2021/3/1 17:00:00 2021/3/1 19:00:00 Peach
|
26
33
|
```
|