web-dev-qa-db-ja.com

Rリストを小文字に変換

Var1はリストです:

var1 <- list(c("Parts of a Day", "Time in Astronomy", "Star"),  c("Tree Tall", "Pine Tree"))

すべての文字を小文字に変換する方法は?望ましい答えは次のリストです。

var1 <- list(c("parts of a day", "time in astronomy", "star"),  c("tree tall", "pine tree"))

使った

as.list(tolower(var1))

しかし、それは不要な\で次の答えを与えます

[[1]]
[1] "c(\"parts of a day\", \"time in astronomy\", \"star\")"

[[2]]
[1] "c(\"tree tall\", \"pine tree\")"

ありがとう。

20

リスト内の各文字ベクトルを小文字にするにはsapplyを使用する必要があります

_sapply(var1, tolower)

# [[1]]
# [1] "parts of a day"    "time in astronomy" "star"             
# 
# [[2]]
# [1] "tree tall" "pine tree"
_

それ以外の場合、tolowerはリスト全体でas.character()を実行しますが、これは望んでいないものです。

32
MrFlick

gsubを使用

gsub("/", "", var1)
as.list(tolower(var1))

これにより、変数からすべての/が削除されます。

1
Josh Stevens