ぽん

人事×データでもっと新しい価値を。

ぽん

人事×データでもっと新しい価値を。

マガジン

  • タレントダッシュボード構築

  • スクレイピング

最近の記事

Django,MySQL,phpMyAdminの環境をDockerで構築する

こちらのマガジンでご紹介したタレントダッシュボードについて、環境面の説明を番外編としてまとめておきます。 Dockerとは Dockerとは、コンテナ型の仮想化プラットフォームのことです。 Windows、Mac、各種Linuxディストリビューションへ導入することができ、例えば自分のPCの中にLinuxサーバ(Dockerではコンテナと呼びます)を立てたり、社内LANに存在する端末をSQLサーバとして運用することができるようになります。 コード化されたファイルを共有すれ

    • 【タレントダッシュボード構築 #9】ユーザー権限を設定する

      今回は、ログインユーザとその権限の管理についてまとめていきます。 具体的には、特定の人には評価情報を見せないように制御する、という実装をどのように行うかを検討します。 ユーザーの作成 前提として、カスタムユーザーモデルの導入が完了しているものとします。詳細および導入の方法についてはこちらの公式ドキュメントをご覧ください。 superuserで管理サイトにログインします。 まずは、評価を参照できない権限のユーザーグループを作成します。 「認証と認可」配下の「グループ」

      • 【タレントダッシュボード構築 #8】社員詳細表示画面をつくる③

        今回は、タブを利用した表示の切り替えについてまとめていきます。 これにより、例えば以下のように情報を切り替えて表示することが可能となります。 必要なデータの取得 まずはviews.pyで、リクエストに応じたデータを取得するよう定義します。 ここでは、半年ごとの所属、級・号、評価ランクを保持するテーブル"Item_6mo"が存在すると仮定します。 [views.py]from django.contrib.auth.mixins import LoginRequiredM

        • 【タレントダッシュボード構築 #7】社員詳細表示画面をつくる②

          今回は、社員コード単位にn件存在するデータを表示する方法についてまとめていきます。 これにより、例えば以下のような情報を表示することが可能となります。 必要なデータの取得 まずはviews.pyで、リクエストに応じたデータを取得するよう定義します。 [views.py]from django.contrib.auth.mixins import LoginRequiredMixinfrom .models import *class ItemDetailView(Log

        Django,MySQL,phpMyAdminの環境をDockerで構築する

        • 【タレントダッシュボード構築 #9】ユーザー権限を設定する

        • 【タレントダッシュボード構築 #8】社員詳細表示画面をつくる③

        • 【タレントダッシュボード構築 #7】社員詳細表示画面をつくる②

        マガジン

        • タレントダッシュボード構築
          11本
        • スクレイピング
          1本

        記事

          【タレントダッシュボード構築 #6】社員詳細表示画面をつくる①

          今回以降は社員の詳細情報を表示する画面を構築していきます。 まずはこちらのエリアを作っていきます。 どのエリアにどのような情報を表示するかを決める方法として、今回はBootstrapのグリッドシステムを利用しています。 グリッドシステムとはこちらに記載されているようにレイアウトを格子状に分解して配置する手法で、横幅を12分割して要素の配置を決めます。 まずは下記の通り、横幅を9(col-9)と3(col-3)と分割して… [templates/app/item_det

          【タレントダッシュボード構築 #6】社員詳細表示画面をつくる①

          【タレントダッシュボード構築 #5】社員一覧画面をつくる②

          今回は検索機能についてまとめていきます。 検索機能はdjango-filterというライブラリを利用して実装します。 詳細は公式ドキュメントをご覧いただきたいのですが、一言でいうと「モデルのフィールドに基づいてクエリセットを絞り込み、その内容をビューに表示する仕組みを提供する機能群」です。 今回例として示した画面では、以下の通り実装しています。 [filters.py]import django_filtersfrom django_filters import res

          【タレントダッシュボード構築 #5】社員一覧画面をつくる②

          【タレントダッシュボード構築 #4】社員一覧画面をつくる①

          #4からは、#0でご紹介したタレントダッシュボードを実際に作っていく作業をご紹介します。 まずは、社員を一覧表示する以下のような画面を構築していきます。 顔写真付きで社員番号、氏名、年齢、所属、職制、級・号(その「級」をどのくらいの期間務めているか、という意味合いと考えてください)を一覧表示している画面です。汎用的な事例としてお考えいただければと思います。 データモデルの定義以下の通りモデルを定義します。 [models.py]from django.db impor

          【タレントダッシュボード構築 #4】社員一覧画面をつくる①

          【タレントダッシュボード構築 #0】 社員情報を一元管理・照会する仕組みをつくる

          データ、ファクトに基づいて意思決定できる人事を目指す人事は、社員からたくさんの機密情報を預かっていたり、たくさんのアンケートに答えてもらったりして、社員から情報を集める取り組みには力を入れているかと思います。 一方で、たくさんの情報が可視化されているか、うまく使える状態になっているかというのはまた別問題で、ここに問題意識を持っている人事担当は結構多いのではないかと思います。 人事組織および経営、現場マネージャーなど、さまざまな主体が必要な人事情報にスムーズにアクセスできる

          【タレントダッシュボード構築 #0】 社員情報を一元管理・照会する仕組みをつくる

          Word Mover's DistanceでコピペESを見つける。

          エントリーシートの例文や正解がネット上にあふれている現代。本来エントリーシートでは、候補者自身が体験したことを本人の表現で語って欲しいところです。 ネットにある例文をまるっとコピーして、もしくはちょろっといじってエントリーしているのかどうか確認すべく、簡単な自然言語処理で「コピペES発見器」を実装してみます。 方針よくあるのはこんな感じ。 例文① 私の強みは、ゴールから逆算し、すべきことを明確にしてきちんと計画を立てられるところだ。 ‌私は大学で体育会サッカー部に所属し

          Word Mover's DistanceでコピペESを見つける。

          people analytics tokyo #2 teamingで見つけた幾つかのヒント。

          2019/9/11(水)、people analytics tokyo #2 teamingに参加してきました。 気づきを簡単にまとめたいと思います。 teamという小さな単位から組織を考えるピープルアナリティクスが人事界隈に限らず、データサイエンティスト、自分のチームを持っている人などに対してももっと開けた領域になってほしい、という趣旨で開催されているこちらの勉強会。 組織開発において、例えば「会社全体」のような、場合によっては数千人、数万人になるような単位に対してのア

          people analytics tokyo #2 teamingで見つけた幾つかのヒント。

          【タレントダッシュボード構築 #3】djangoのモデル定義を理解する②

          #2に続き、今回はdjangoのモデル定義、特にForeignKey型についてまとめます。 テーブル定義まずは、社員の基礎情報を集めるテーブルを定義します。 キーは社員コード、属性としていくつかの情報を持たせ、ここにForeignKey型の項目も定義します。 [models.py]class Evaluation(models.Model): """ クラス(考課) """ code_7_ev = models.CharField(verbose_name

          【タレントダッシュボード構築 #3】djangoのモデル定義を理解する②

          Bonfire Data Analyst #2で「データの可視化」に対する視野が広がった。

          8/29(木)、Bonfire Data Analyst #2 に参加してきました。 データアナリスト向けのイベントで、今回のテーマは「データの可視化」。可視化のプロフェッショナルになる、というのはどんなキャリアを歩むにしても武器になりそうだと考えているので、インプットを増やしたくて参加しました。 Bonfireは、ヤフーさんが立ち上げている技術・デザインコミュニティです。今回はデータアナリスト向けのイベントでしたが、デザイナー向けのイベントも開催されたりしているようで、他

          Bonfire Data Analyst #2で「データの可視化」に対する視野が広がった。

          【タレントダッシュボード構築 #2】djangoのモデル定義を理解する①

          #1に続き、今回はdjangoのモデル定義についてまとめます。 djangoでは、SQLを書いてDBを定義するのではなく、「マイグレーション」操作によってDBを定義します。マイグレーション元として定義するのがmodels.pyです。 社員の基礎情報を集めるテーブルを定義する具体例に基づいて考えていきます。キーは社員コード、属性としていくつかの情報を持たせます。 [models.py]class Item(models.Model): """ クラス(社員基礎情報

          【タレントダッシュボード構築 #2】djangoのモデル定義を理解する①

          【タレントダッシュボード構築 #1】djangoのディレクトリ構成を理解する

          #0では、PythonおよびWebアプリケーションフレームワーク(Django)を利用した「タレントダッシュボード」を作成することを宣言しました。 ※動画キャプチャもありますので、ぜひご覧ください。 #1では、djangoのベーシックな構成をご紹介します。 なぜdjangoなのかwebフレームワークにはたくさん有名なものがありますね。 私は以下のような理由でdjangoを選びました。 こちらのサイトによれば、InstagramやYouTube、Pinterest、Dro

          【タレントダッシュボード構築 #1】djangoのディレクトリ構成を理解する

          [Python]Pillowで画像サイズを揃える

          今回は、PythonライブラリのPillowを使って、写真を同じサイズに揃える方法を紹介します。 社員情報を可視化するサイトを構築していて、顔写真を同じサイズに変換する必要があったことが背景です。これについては別途マガジンを作って記事を書こうと思っていますが、とりあえずtips的なエントリを… カレントディレクトリ配下のjpgファイルすべてを高さ200pxに揃え、 ファイル名末尾に"_h200"を付与して同じディレクトリに保存するコードが以下です。 import osi

          [Python]Pillowで画像サイズを揃える

          スクレイピングで高校偏差値テーブルを作成する

          高校の偏差値をリスト化し、高校名から特徴量を作りたかったときのメモです。 今回は、「みんなの高校情報」さんのサイトをスクレイピングして、高校名と偏差値の情報をCSVファイルで取り出す例を取り挙げます。 Pythonの実行環境はどこでも良いのですが、最もお手軽なのはGoogle Colabですね。社内のネットワーク制限がある場合は、anacondaがお手軽です。 ただし、プロジェクトとして分析を行うときは、dockerで分析環境をポータブルかつ再現可能な状態にしておくのがい

          スクレイピングで高校偏差値テーブルを作成する