質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

570閲覧

Pythonを用いたスクレイピング、業務改善

kgnmakl

総合スコア12

スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/12/12 05:00

前提

Pythonを用いて、業務改善に取り組んでいます。
出社日が平日なのか休日なのかを判定するシステムを構築したいです。

実現したいこと

内容として、タイムカード(日付、出社、退社、外出、復帰時間を含む)から労働時間などの主計を行います。単純な、平日の労働時間については集計できました。しかし、休日出勤の場合、集計方法が異なるため平日の労働時間とは別に集計を行いたいです。
しかし、営業日が変則的で必ずしもカレンダー通りではなく、社内独自のカレンダー(日曜・祝日は休日、第二土曜が休日といったもの)に従います。したがって、その出社日が通常の出社または休日出勤に該当するのかを判定する必要があります。
どういった方法で、出社日が通常の出社または休日出勤に該当するのかを判定するのが良いでしょうか?コードというより、アプローチの方法を教えていただければと思います。

試したこと

ライブラリ「jpholiday」の使用も考えましたが、社内独自のカレンダーを適用するとなるとなかなか実現したいことができません。

それぞれの月の日にちと、その日が出社日または休日なのかをリスト型に格納して、タイムカードの日と照らし合わせて通常の出社か休日出勤なのかを判断するという方法を考えました。この方法では、参照元の社内独自のカレンダー(リスト型のもの)を作成するのに時間を要するため、他にどのような方法があるかを教えていただきたいです。

補足情報(FW/ツールのバージョンなど)

Python,Jupyter Labを使用してます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

社内独自のカレンダー(日曜・祝日は休日、第二土曜が休日といったもの)

のとおりであれば、以下を順番に判定していけばよいです。

ただし上記に当てはまらない例外があるのであれば、独自のカレンダー辞書なりを用意して判定するしかないと思います。

投稿2022/12/12 05:15

can110

総合スコア38233

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kgnmakl

2022/12/12 05:18

calendarモジュールまたはdatetimeモジュールを使用して、そのような判定ができるんですね。勉強になりました。ありがとうございます!!
otn

2022/12/12 11:57

第二土曜日かどうかだけなら、「土曜日であり、かつ、8日から14日まで」であれば第二土曜日と、簡単です。
guest

0

社内独自の休日リストを何らかの形でプログラム側にリストとして持たせておく以外にないんじゃないでしょうか。
社内独自の休日データを作らずに独自の休日を判定するのは難しくないですか。

投稿2022/12/12 05:08

編集2022/12/12 05:11
yuma.inaura

総合スコア1451

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kgnmakl

2022/12/12 05:12

Excelで休日リストを作成して、データフレームとしてとりこみ、参照してみます。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問