質問編集履歴
3
コードにコメントを追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -56,6 +56,7 @@
|
|
56
56
|
ct['end'] = pd.to_datetime(ct['end'])
|
57
57
|
|
58
58
|
# 2021/7/1 9:00 -- 9:10 の間に室内にいた人数をカウント
|
59
|
+
# (入室時間 <= 計測終了日時) And (計測開始日時 < 退室時間)
|
59
60
|
len(inout[(inout["in"] <= dt.datetime(2021,7,1,9,10)) & (dt.datetime(2021,7,1,9,0) <= inout["out"])])
|
60
61
|
```
|
61
62
|
|
2
コードを追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
ある部屋の入退室時間を記録した以下の様な CSV があります。
|
4
4
|
|
5
|
-
**・入退室記録.csv**
|
5
|
+
**・入退室記録(in-out.csv)**
|
6
6
|
|社員ID|入室時間|退室時間|
|
7
7
|
|:--|:--:|--:|
|
8
8
|
|A10|2021/7/1 7:01|2021/7/1 20:40|
|
@@ -13,7 +13,7 @@
|
|
13
13
|
|
14
14
|
また、出力したい時間範囲をあらわす CSV があります。
|
15
15
|
|
16
|
-
**・計測時間範囲.csv**
|
16
|
+
**・計測時間範囲.csv(count-time.csv)**
|
17
17
|
|計測開始日時|計測終了日時|
|
18
18
|
|:--:|:--:|
|
19
19
|
|2021/7/1 7:00|2021/7/1 7:10|
|
@@ -37,6 +37,26 @@
|
|
37
37
|
|
38
38
|
**入室時間 <= 計測終了日時 And 計測開始日時 < 退室時間**
|
39
39
|
|
40
|
-
で出力できるところまでは理解
|
40
|
+
で出力できるところまでは理解し、特定の時間帯(この場合は 9:00 -- 9:10 の間)を指定してカウントするコードは以下の様に書いています。(こちらも間違いがあれば、あるいはスマートな書き方があればご指摘いただきたいです)
|
41
|
+
|
42
|
+
手動で指定している 9:00 -- 9:10 をcount-time.csv から読み込んで「出力csvイメージ.csv」にような形でカウント数を出したいのですが、ここからどのようにしたらよいか詰まってしまいました。
|
43
|
+
|
44
|
+
```python
|
45
|
+
import pandas as pd
|
46
|
+
import datetime as dt
|
47
|
+
|
48
|
+
# csv 読み込み
|
49
|
+
inout = pd.read_csv("in-out.csv")
|
50
|
+
ct = pd.read_csv("count-time.csv")
|
51
|
+
|
52
|
+
# 各カラムをdatetime型へ変換
|
53
|
+
inout['in'] = pd.to_datetime(inout['in'])
|
54
|
+
inout['out'] = pd.to_datetime(inout['out'])
|
55
|
+
ct['start'] = pd.to_datetime(ct['start'])
|
56
|
+
ct['end'] = pd.to_datetime(ct['end'])
|
57
|
+
|
58
|
+
# 2021/7/1 9:00 -- 9:10 の間に室内にいた人数をカウント
|
59
|
+
len(inout[(inout["in"] <= dt.datetime(2021,7,1,9,10)) & (dt.datetime(2021,7,1,9,0) <= inout["out"])])
|
60
|
+
```
|
41
61
|
|
42
62
|
何卒よろしくお願いいたします。
|
1
誤字の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
また、出力したい時間範囲をあらわす CSV があります。
|
15
15
|
|
16
16
|
**・計測時間範囲.csv**
|
17
|
-
|計測開
|
17
|
+
|計測開始日時|計測終了日時|
|
18
18
|
|:--:|:--:|
|
19
19
|
|2021/7/1 7:00|2021/7/1 7:10|
|
20
20
|
|2021/7/1 7:10|2021/7/1 7:20|
|
@@ -24,9 +24,9 @@
|
|
24
24
|
...(以下、10分間隔で 24 時まで続く)
|
25
25
|
|
26
26
|
## やりたいこと
|
27
|
-
入退室時間を記録した csv に対し、時間範囲の CSV の範囲ごとに「どの時間帯に何人が入室していたか」というリストを出力したいです。
|
27
|
+
入退室時間を記録した csv に対し、時間範囲の CSV の範囲ごとに「どの時間帯に何人が入室していたか」というリストを Python で出力したいです。
|
28
28
|
**↓ 出力csvイメージ**
|
29
|
-
|計測開
|
29
|
+
|計測開始日時|計測終了日時|同時入室人数|
|
30
30
|
|:--|:--:|--:|
|
31
31
|
|2021/7/1 7:00|2021/7/1 7:10|2|
|
32
32
|
|2021/7/1 7:10|2021/7/1 7:20|3|
|
@@ -35,7 +35,7 @@
|
|
35
35
|
|
36
36
|
特定の時間範囲のみであれば
|
37
37
|
|
38
|
-
**入室時間 <= 計測終了日時 And 計測開
|
38
|
+
**入室時間 <= 計測終了日時 And 計測開始日時 < 退室時間**
|
39
39
|
|
40
40
|
で出力できるところまでは理解出来たのですが、これを時間帯ごとに「出力csvイメージ」のような形式で出力するやり方がわからず、ご教示いただきたいです。
|
41
41
|
|