R語言
make.names
位於 base
包(package)。 說明
從字符向量中創建語法上有效的名稱。
用法
make.names(names, unique = FALSE, allow_ = TRUE)
參數
names |
字符向量被強製轉換為語法上有效的名稱。如果有必要的話,這是強製的。 |
unique |
邏輯性;如果 |
allow_ |
合乎邏輯的。為了兼容R1.9.0 之前。 |
細節
語法上有效的名稱由字母、數字和點或下劃線字符組成,並以字母或點開頭,後麵不跟數字。 ".2way"
等名稱無效,reserved 等單詞也無效。
字母的定義取決於當前區域設置,但隻有 ASCII 數字被視為數字。
人物"X"
如有必要,可在前麵添加。所有無效字符都將轉換為"."
。缺失值被轉換為"NA"
。匹配的名字R關鍵字後附有一個點。重複的值被更改為make.unique
.
值
與 names
長度相同的字符向量,每個字符向量都更改為當前區域設置編碼中的語法上有效的名稱。
警告
某些操作係統(尤其是 FreeBSD)報告有關某些語言環境(通常是所有多字節語言環境,包括 UTF-8 語言環境)中哪些字符是字母的極其錯誤的信息。然而,R提供 Windows、macOS 和 AIX 上的替代品。
注意
之前R版本 1.9.0 中,下劃線在變量名稱中無效,依賴於它們轉換為點的代碼將不再工作。使用allow_ = FALSE
為了向後兼容。
在創建名稱以導出到不允許在名稱中使用下劃線的應用程序(例如,S-PLUS 和某些 DBMS)時,allow_ = FALSE
也很有用。
例子
make.names(c("a and b", "a-and-b"), unique = TRUE)
# "a.and.b" "a.and.b.1"
make.names(c("a and b", "a_and_b"), unique = TRUE)
# "a.and.b" "a_and_b"
make.names(c("a and b", "a_and_b"), unique = TRUE, allow_ = FALSE)
# "a.and.b" "a.and.b.1"
make.names(c("", "X"), unique = TRUE)
# "X.1" "X" currently; R up to 3.0.2 gave "X" "X.1"
state.name[make.names(state.name) != state.name] # those 10 with a space
也可以看看
相關用法
- R make.unique 使字符串唯一
- R matrix 矩陣
- R matmult 矩陣乘法
- R maxCol 求矩陣中的最大位置
- R match 價值匹配
- R match.arg 使用部分匹配的參數驗證
- R mat.or.vec 創建矩陣或向量
- R mapply 將函數應用於多個列表或向量參數
- R marginSums 計算表格邊距
- R match.call 參數匹配
- R match.fun 提取名稱指定的函數
- R mtfrm 匹配輔助函數
- R merge 合並兩個 DataFrame
- R missing 正式論證有價值嗎?
- R mode 對象的(存儲)模式
- R message 診斷信息
- R mean 算術平均值
- R memlimits 查詢和設置堆大小限製
- R memCompress 內存中壓縮和解壓縮
- R memory.profile 分析 Cons 單元的使用情況
- R file.path 構造文件路徑
- R grep 模式匹配和替換
- R getwd 獲取或設置工作目錄
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Make Syntactically Valid Names。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。