1
으로 변경하고 openxlsx
을 사용하여 엑셀 통합 문서에 데이터 프레임 작성을 준비한 다음 openxlsx's vignette 열을 사용하여 변수 class
을 변경하여 예제를 실행할 수 있습니다.프로그래밍 방식으로 클래스를 사용자 지정 클래스
## data.frame to write
df <- data.frame("Date" = Sys.Date()-0:4,
"Logical" = c(TRUE, FALSE, TRUE, TRUE, FALSE),
"Currency" = paste("$",-2:2),
"Accounting" = -2:2,
"hLink" = "http://cran.r-project.org/",
"Percentage" = seq(-1, 1, length.out=5),
"TinyNumber" = runif(5)/1E9, stringsAsFactors = FALSE)
## Below comes the custom class assignation used for excel formatting
class(df$Currency) <- "currency"
class(df$Accounting) <- "accounting"
class(df$hLink) <- "hyperlink"
class(df$Percentage) <- "percentage"
class(df$TinyNumber) <- "scientific"
## Works !
class(df$Percentage)
[1] "percentage"
내 자신의 데이터 세트로 작업하기 위해 나는 이름이 주어진 문자열과 일치한다 (아래로) 컬럼의 클래스를 변경하는 dplyr
를 사용하고 싶습니다. 내가 지금까지 시도했습니다 무엇
는 :
require(tidyverse)
fn_toPercentage <- function(x){class(x)<-"percentage"}
df2 <- df %>%
mutate_at(vars(starts_with("Percent")),funs(fn_toPercentage))
## Check:
lapply(df2,class)
$Date
[1] "Date"
$Logical
[1] "logical"
$Currency
[1] "character"
$Accounting
[1] "integer"
$hLink
[1] "character"
## Failed !
$Percentage
[1] "character"
$TinyNumber
[1] "numeric"
나는 기능 setAs
내 문제에 관련이있을 수 있다는 느낌을 가지고,하지만 난 그것을 사용하는 방법을 알아낼 수 없습니다. fn_toPercentage
에 오류가 같은 당신의 도움
고맙습니다. 그레고리! – Cazz