>

와이즈 비즈하는 방법이 있습니까  이식 가능한 방법으로 R 객체를 사용하여 파일을 Windows에서 Linux 또는 뒤로 이동할 때 인코딩이 유지됩니까?

예를 들어,이 간단한 data.frame (Rstudio 1.0.153/Windows 10으로 R 3.4.1에서 생성)이 있다고 가정합니다

save

파일 # I did this part on a Windows machine df <- data.frame(Õ = 1:5, Ä = c("õäöü", "baa", "mää", "muu", "näu")) save(df, file="baa.rda") 에 연결 'd windows에서 : baa.rda

Linux 머신 (R 3.2.5, RStudio 1.0.136, Linux Mint Debian Edition)에서 읽으면 ...

save

원래 형식으로 다시 변환하려면 다음과 같은 것을 사용할 수 있습니다 ...

# now on Linux ...
load("baa.rda")
df
#      \xd5             \xc4
# 1    1 \xf5\xe4\xf6\xfc
# 2    2              baa
# 3    3        m\xe4\xe4
# 4    4              muu
# 5    5           n\xe4u

반대 방향으로 갈 때 (LMDE->Windows) 엉망인 열 이름 일 뿐이며 names(df) <- iconv(names(df), from="WINDOWS-1252", to="UTF-8") # [1] "Õ" "Ä" df$Ä <- iconv(df$Ä, from="WINDOWS-1252", to="UTF-8") # df$Ä # [1] "õäöü" "baa" "mää" "muu" "näu" 를 사용하여이를 수정할 수 있습니다. :

iconv

텍스트 파일 (예 : csv)에서 데이터를 읽고 올바른 > names(df2) [1] "Õ" "Ä" > iconv(names(df2), from="UTF-8", to="WINDOWS-1252") [1] "Õ" "Ä" 를 지정하면 문제가 사라집니다.  ... 그래서 해결책이 될 수 있습니다. 또는 fileEncoding 에 함수 작성  한 번에 모든 것.

그러나 더 간단한 방법이 있습니까? 즉, 텍스트 프레임 방식에 대해 걱정하지 않고 한 플랫폼에서 데이터 프레임을 저장하고 다른 플랫폼에서 데이터 프레임을 읽는 것입니다.

그리고 관련된 질문은 iconv 때 어떻게 든 포함 (가정) 인코딩에 대한 정보입니다 R 객체?

save

  • 답변 # 1

    내 명성이 귀하의 질문에 대해 언급하기에 충분하지 않기 때문에 직접 답변을 게시하고 있습니다.

    Linux 사용자는 아니지만 작업 공간을 세션에 저장하면 도움이됩니다. (맨 위의 세션을 클릭하십시오-다른 이름으로 작업 공간 저장 ...)

    ***. RData 파일을 저장 한 후 다음에 파일을로드 할 수 있습니다.

    이전 세션에서 사용한 데이터가로드됩니다.

  • 이전 mysql - 단일 열 구조로 데이터가 저장된 테이블에서 다중 필터 쿼리
  • 다음 apache flink - Fink에서 실시간으로 가치를보고하는 방법은 무엇입니까?