簡體   English   中英

將多個數據幀中的變量轉換為 R 中的字符

[英]Convert a variable in multiple dataframes to character in R

我有 4 個數據集:(y25_age,y30_age,y25_mri,y30_mri)。 每個數據集都有一個 ID 變量。 我想將上述數據集中的 ID 格式從數字轉換為字符。 我試過下面的代碼

x<-list(y25_age,y30_age,y25_mri,y30_mri)

x$ID<-lapply(x,function(x){x<-x["ID"]<-as.character(x["ID"])})

但是,這給出了所有 ID 的 output 作為字符,這不是我想要的。 歡迎任何建議? 先感謝您。

在這里,到<-的 lhs 應該是x並且應該有一個返回 'x' 的語句

x <- lapply(x,function(u){u$ID <-as.character(u$ID)
       u})

注意:將匿名 function 從“x”更改為“u”以避免任何混淆

或者另一種選擇是transform

x <- lapply(x, transform, ID = as.character(ID))

如果打算更改原始對象,則“x”應該是命名list

names(x) <- c('y25_age','y30_age','y25_mri','y30_mri')

然后使用list2env

list2env(x, .GlobalEnv) # not recommended though

這也應該有效

library(tidyverse)
map(x, ~ .x %>% mutate(ID = as.character(ID)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM