2013-11-24 4 views
4

다음 라인의 R 스크립트가 Windows (7, 64 비트, R 3.0.2 64 비트)에서 제대로 작동하지만 리눅스 (R 3.0.2 64 비트와 3.12.1-1-ARCH GNU/리눅스 64 비트) :날짜/시간 형식의 변환 문자 (POSIXct)는 Windows가 아닌 Linux에서 작동합니다.

윈도우 :

>strptime("2013-05-08 10:27:50", format="%Y-%m-%d %H:%M:%S") 
>[1] "2013-05-08 10:27:50" 

리눅스 :

> strptime("2013-05-08 10:27:50", format="%Y-%m-%d %H:%M:%S") 
>NA 

일부 참조에 "LC_TIME있다 로캘 범주 "에 대한 설명은입니다.하지만 이것이 내 문제와 관련이 있는지 정말 모르겠다.

누군가가 설명해주십시오. 왜 코드의 동일한 줄이 다른 결과를 초래하고 어떻게 Linux 버전의 R을 Windows 버전의 동작 방식으로 만들 수 있습니까?

+1

두 컴퓨터에서 시간대가 동일합니까? '? Sys.timezone'을보십시오. –

+1

Linux에서 작동합니다 - 특정 Linux 시스템 구성과 관련이 있어야합니다. R을 시작하기 전에 쉘에서'export LC_ALL = C'를 시도하십시오. – zwol

+0

아니요, 그렇지 않습니다. 리눅스는 저에게 ""CET를 보여줍니다. 어떤 생각을 어떻게 바꿀 수 있습니까? –

답변

0

아치 리눅스에서 3.17.6-1-ARCH 및 R-3.1.2와 함께 작동합니다. 내 시간대는 아시아/콜카타로 설정되어 있지만 출력이 약간 다르므로 시간대도 표시됩니다.

strptime("2013-05-08 10:27:50", format="%Y-%m-%d %H:%M:%S") [1] "2013-05-08 10:27:50 IST".