Rで解析:経歴や業績を構造化して履歴書にまとめる「vitae」パッケージ
研究者や専門職にとって、経歴や業績をまとめた履歴書を用意する場面は少なくありません。しかし、項目の追加や書式の統一を手作業で続けるには手間がかかります。
「vitae」パッケージは、R Markdownで履歴書を組み立てるためのテンプレートと整形関数を提供します。経歴や業績を1項目1行のデータフレームとして扱い、簡潔な一覧形式や補足説明を添えた詳細な形式で各セクションへ出力できます。また、引用スタイル(CSL)の仕様に沿った日付表記の組み立ても可能です。
本パッケージの利用で、履歴書の更新と体裁の管理をRの作業手順の中で一貫して扱えるのではないかと考えます。
パッケージバージョンは0.7.0。Windows 11 x64 (build 26200)のR version 4.6.1で確認しています。
パッケージのインストール
下記コマンドを実行してください。
# パッケージのインストール
install.packages("vitae")
# パッケージの読み込み
library("vitae")コマンド例
詳細はコメント、パッケージのヘルプを確認してください。
vitaeのエントリー関数は、経歴や業績を1項目1行のデータフレームにまとめ、履歴書の各セクションへ渡すためのものです。項目を短く並べる簡潔な形式と、補足説明を添えた詳細な形式が用意されています。
CSL(Citation Style Language)は、文献の引用体裁を記述する共通仕様です。vitaeには、この仕様に沿った形式で日付を組み立てる補助関数が含まれています。
以下では、架空の人物の経歴を擬似データとして用意します。
# 架空の人物の経歴を1項目1行でまとめる
keireki <- tibble::tribble(
~ yakushoku, ~ kikan, ~ shozoku, ~ basho, ~ gyoumu,
"宇治茶栽培研究員", "2016 - 2020", "京都府茶業研究所", "宇治田原町", c("覆下栽培の収量比較試験を担当", "碾茶の香気成分の分析手順を整備"),
"農業普及指導員", "2020 - 2023", "南丹広域振興局", "亀岡市", "九条ねぎ農家向けの土壌診断と施肥指導を実施",
"主任研究員", "2023 - 現在", "京都先端食農ラボ", "長岡京市", c("丹波黒大豆の乾燥工程の省力化を研究", "府内3市町の生産者と共同で実証圃を運営"))経歴を簡潔に列挙する:brief_entriesコマンド
各項目を「内容・時期・所属」の3列だけの一覧に整えます。
| オプション | 意味 | 初期値 |
|---|---|---|
| data | data.frameまたはtibble | なし |
| what | 項目の主な値(役職や学位など) | なし |
| when | 項目の時期(その役割に費やした期間など) | なし |
| with | 企業や組織 | なし |
| .protect | TRUEのとき、上記の引数の入力をLaTeXコードとして解釈しないよう保護する | TRUE |
# 経歴を簡潔な3項目の形式に整える
keireki_brief <- keireki %>%
brief_entries(what = yakushoku, when = kikan, with = shozoku)
# 取り込んだ内容をtibbleとして確認する
tibble::as_tibble(keireki_brief)
# A tibble: 3 × 3
what when with
<chr> <chr> <chr>
1 宇治茶栽培研究員 2016 - 2020 京都府茶業研究所
2 農業普及指導員 2020 - 2023 南丹広域振興局
3 主任研究員 2023 - 現在 京都先端食農ラボ
経歴を詳しく記述する:detailed_entriesコマンド
brief_entriesの3列に「場所」と「補足」の2列が加わります。補足はリスト列で複数の項目を渡せます。
| オプション | 意味 | 初期値 |
|---|---|---|
| data | data.frameまたはtibble | なし |
| what | 項目の主な値(役職や学位など) | なし |
| when | 項目の時期(その役割に費やした期間など) | なし |
| with | 企業や組織 | なし |
| where | 項目の場所 | なし |
| why | 箇条書きとして加える補足情報。リスト列で複数の項目を渡せる | なし |
| .protect | TRUEのとき、上記の引数の入力をLaTeXコードとして解釈しないよう保護する | TRUE |
# 場所と業務内容の補足を加えて詳細な形式に整える
keireki_detail <- keireki %>%
detailed_entries(what = yakushoku, when = kikan, with = shozoku,
where = basho, why = gyoumu)
# 取り込んだ内容をtibbleとして確認する
tibble::as_tibble(keireki_detail)
# A tibble: 3 × 5
what when with where why
<chr> <chr> <chr> <chr> <list>
1 宇治茶栽培研究員 2016 - 2020 京都府茶業研究所 宇治田原町 <chr [2]>
2 農業普及指導員 2020 - 2023 南丹広域振興局 亀岡市 <chr [1]>
3 主任研究員 2023 - 現在 京都先端食農ラボ 長岡京市 <chr [2]>
CSL準拠の日付表記を組み立てる:csl_dateコマンド
年・月・日を要素にしたリストを渡すと、引用スタイルで使う日付の文字列を返します。日付を2つ渡すと開始から終了までの期間になります。
| オプション | 意味 | 初期値 |
|---|---|---|
| date_parts | 1つまたは2つの日付をリストで指定する。各日付はlist(年, 月, 日)の形式。要素を減らすと精度が下がり、2つ渡すと開始と終了の期間になる | list() |
| season | スキーマで定義される日付変数の追加プロパティ | NULL |
| circa | スキーマで定義される日付変数の追加プロパティ | NULL |
| literal | スキーマで定義される日付変数の追加プロパティ | NULL |
| raw | スキーマで定義される日付変数の追加プロパティ | NULL |
| edtf | スキーマで定義される日付変数の追加プロパティ | NULL |
# 単一の日付を引用スタイルの文字列にする
format(csl_date(date_parts = list(list(2023, 6, 20))))
[1] "2023-6-20"
# 開始日と終了日を渡すと期間の表記になる
format(csl_date(date_parts = list(list(2023, 6, 20), list(2024, 1, 31))))
[1] "2023-6-20/2024-1-31"
# 年と月だけなど精度を落とした指定もできる
format(csl_date(date_parts = list(list(2024, 3))))
[1] "2024-3"
この記事が誰かの役に立ちますように。