R CSV에서 %Hh%M을 %M 형식으로 변경하는 방법은 무엇입니까?

R CSV에서 %Hh%M을 %M 형식으로 변경하는 방법은 무엇입니까?

11h11기간 형식(등 ) 을 분 형식으로 동적으로 변경하는 방법이 궁금합니다 . %Hh%M예를 들어 %M원래 데이터 형식을 유지하는 것이 더 좋을 것 같습니다.EMFIT-QS장비. 데이터

Name,Time_duration
Leo,11h11

암호

DF <- read.csv("/home/masi/Documents/Data/data.csv", header = T, sep = ",")
str(DF)

산출

$ Time_duration         : Factor w/ 1 level 11h11",..

나의 충고

  1. 데이터 기간을 분으로 변경합니다. 여기서 두 번째 열은 비표준 단위로 인한 혼동을 피하기 위해 단위를 지정하는 데 사용됩니다.

    Name,Time_duration
    -, min
    Leo,671
    
  2. 주어진 표준 필드를 변경하지 마십시오 %Hh%M. 프로그래밍 방식으로 모든 필드를 수동으로 분 프레젠테이션으로 변환하고 싶습니다.%M

답변: 3.3.3

답변1

colClasses에서 언급한 대로 사용자 정의 기능을 사용할 수 있습니다 .read.table/read.csv에서 colClasses 매개변수에 대한 사용자 정의 날짜 형식을 지정합니다.

보여주기 위해;

$ cat file.csv 
Name,Time_duration
Leo,11h11

그럼 안으로R

> setClass('myTime')
> 
> setAs('character','myTime', function(from) {
+ x <- as.POSIXlt(from, format='%Hh%M')
+ return (x$hour*60 + x$min)
+ })
> 
> data <- read.csv2(file='file.csv', sep=',', dec='.', header=TRUE, 
+ colClasses=c('character','myTime'))
> 
> data
  Name Time_duration
1  Leo           671
> 

관련 정보