當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


R person 人員

R語言 person 位於 utils 包(package)。

說明

用於保存姓名和電子郵件地址等人員信息的類和實用方法。

用法

person(given = NULL, family = NULL, middle = NULL,
       email = NULL, role = NULL, comment = NULL,
       first = NULL, last = NULL)

as.person(x)
## Default S3 method:
as.person(x)

## S3 method for class 'person'
format(x,
       include = c("given", "family", "email", "role", "comment"),
       braces = list(given = "", family = "", email = c("<", ">"),
                     role = c("[", "]"), comment = c("(", ")")),
       collapse = list(given = " ", family = " ", email = ", ",
                       role = ", ", comment = ", "),
       ...,
       style = c("text", "R")
)

## S3 method for class 'person'
toBibtex(object, escape = FALSE, ...)

參數

given

具有給定名稱或其列表的字符向量。

family

帶有姓氏的字符串或其列表。

middle

帶有折疊中間名的字符串。已棄用,請參閱詳細信息。

email

給出 e-mail 地址(每個)的字符串(或向量)或其列表。

role

指定人員角色的字符向量(請參閱詳細信息)或其列表。

comment

提供注釋的字符串(或向量)或其列表。

first

給出名字的字符串。已棄用,請參閱詳細信息。

last

給出姓氏的字符串。已棄用,請參閱詳細信息。

x

as.person 泛型的對象; as.person 默認方法的字符串;否則是"person" 類的對象。

include

給出格式化時要包含的字段的字符向量。

braces

字符列表(請參閱詳細信息)。

collapse

字符列表(請參閱詳細信息)。

...

目前沒有使用。

style

指定打印樣式的字符串,"R" 產生 R 代碼的格式。

object

一個R從類繼承的對象"person".

escape

指示非 ASCII 字符是否應轉換為 LaTeX 轉義序列的邏輯。

細節

"person" 類的對象可以保存任意正數個人的信息。這些可以通過使用列表參數調用 person() 來獲得,或者首先創建代表單個人的對象並通過 c() 組合這些對象來獲得。

format() 方法將有關人員的信息折疊為字符向量(每個人一個字符串):選擇 include 中的字段,每個字段使用 collapse 的相應元素折疊為字符串,隨後使用相應的 “embraced” 折疊為字符串。 braces 的元素,最後折疊成一個由空格分隔的字符串。如果 braces 和/或 collapse 未指定所有字段的字符,則會估算用法中顯示的默認值。如果collapseFALSENA,則相應字段不會折疊,但僅使用第一個元素。 print() 方法調用 format() 方法並打印結果,toBibtex() 方法創建合適的 BibTeX 表示形式。

Person 對象可以按字段(使用 $ )或位置(使用 [ )進行下標。

as.person() 是一個通用函數。它的默認方法嘗試反轉默認的人員格式,並且還可以處理由逗號或"and"(帶有適當的空格)折疊的格式化人員條目。

個人名稱相當棘手,例如 https://en.wikipedia.org/wiki/Personal_name

"person" 類的當前實現(從 R 2.12.0 開始)使用給定(包括中間名)和姓氏的概念,分別由 givenfamily 指定。早期版本使用基於名字、中間名和姓氏的方案,適合大多數西方文化,其中名字在姓氏之前,但不通用,因為其他一些文化將其放在姓氏之後,或者不使用姓氏。為了順利過渡到新方案,參數 firstmiddlelast 仍然受支持,但它們的使用已被棄用,並且不得與相應的新樣式參數結合使用。對於非自然人(例如機構、公司等),適合使用 given (但不是 family )作為名稱,例如 person("R Core Team", role = "aut")

新方案還增加了指定的可能性角色基於 MARC 相關代碼列表的子集(https://www.loc.gov/marc/relators/relaterm.html)。在創作中賦予人物角色時R包,建議使用以下方式。

"aut"

(作者)用於對包做出重大貢獻並應出現在包引用中的完整作者。

"com"

(編譯器)用於收集代碼(可能是其他語言)但沒有對包做出進一步實質性貢獻的人。

"cph"

(版權持有者)供所有版權持有者使用。這是一個法律概念,因此應使用機構或法人團體的法定名稱。

"cre"

(創建者)用於包維護者。

"ctb"

(貢獻者)用於做出較小貢獻(例如代碼補丁等)但不應出現在包引用中的作者。

"ctr"

(承包商)用於已簽約編寫包(部分)的作者,因此不擁有知識產權。

"dtc"

(數據貢獻者)用於為包貢獻數據集的人員。

"fnd"

(資助者)用於為包的開發提供財務支持的個人或組織。

"rev"

(審閱者)用於負責審閱包(部分)的個人或組織。

"ths"

(論文顧問)如果該包是論文的一部分,請用於論文顧問。

"trl"

(翻譯器)如果 R 代碼是從另一種語言(通常是 S)翻譯而來,則用於 R 的翻譯器。

在舊方案中,人員對象用於單個人員,單獨的 "personList" 類及其相應的創建者 personList() 用於這些對象的集合。新方案采用單個類來獲取有關任意正數人員的信息,從而消除了對 personList 機製的需要。

comment 字段可用於“arbitrary” 有關人員的附加信息。名為"ORCID"的元素將被用來給出ORCID標識符(更多信息參見https://orcid.org/),並通過print()format()方法顯示為相應的URI(參見下麵的示例)。

person()as.person() 返回類 "person" 的對象。

例子

## Create a person object directly ...
p1 <- person("Karl", "Pearson", email = "pearson@stats.heaven")

## ... or convert a string.
p2 <- as.person("Ronald Aylmer Fisher")

## Combining and subsetting.
p <- c(p1, p2)
p[1]
p[-1]

## Extracting fields.
p$family
p$email
p[1]$email

## Specifying package authors, example from "boot":
## AC is the first author [aut] who wrote the S original.
## BR is the second author [aut], who translated the code to R [trl],
## and maintains the package [cre].
b <- c(person("Angelo", "Canty", role = "aut", comment =
         "S original, <http://statwww.epfl.ch/davison/BMA/library.html>"),
       person(c("Brian", "D."), "Ripley", role = c("aut", "trl", "cre"),
              comment = "R port", email = "ripley@stats.ox.ac.uk")
     )
b

## Formatting.
format(b)
format(b, include = c("family", "given", "role"),
   braces = list(family = c("", ","), role = c("(Role(s): ", ")")))

## Conversion to BibTeX author field.
paste(format(b, include = c("given", "family")), collapse = " and ")
toBibtex(b)

## ORCID identifiers.
(p3 <- person("Achim", "Zeileis",
              comment = c(ORCID = "0000-0003-0918-3766")))

也可以看看

citation

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Persons。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。