将给定字符串转换为分钟

时间:2017-02-19 14:43:23

标签: r datetime

我有一个以String格式表示时间的列。 格式是 PT5H1M15S which is equivalent to 5 Hour 1 Minute and 15 Second(Pacific Time)。我是R的新手,需要将其转换为Minutes。任何帮助在这里表示赞赏。感谢。

我的预期答案是301.25分钟

2 个答案:

答案 0 :(得分:1)

您可以拆分字符串以获取碎片然后将其添加。

    public void onClick(View v)
    {
        // TODO Auto-generated method stub
      if (v == btnAdd){
         if(saveFacultyID.getText().toString() != "" 
    || !saveFacultyID.getText().toString().isEmpty() 
                        || saveFname.getText().toString() != "" 
    || !saveFname.getText().toString().isEmpty()
                        || savePassword.getText().toString() != "" 
    || !savePassword.getText().toString().isEmpty()
                        || saveRetype.getText().toString() != "" 
    || !saveRetype.getText().toString().isEmpty()){

            NewAccount account = new NewAccount();
            account.setFacultyID(saveFacultyID.getText().toString());
            account.setFname(saveFname.getText().toString());
            account.setLname(saveLname.getText().toString());
            account.setPassword(savePassword.getText().toString());
            account.setRetype(saveRetype.getText().toString());

            db.AddTeacher(account);

            Toast toast = Toast.makeText(this, "New Record Saved",           Toast.LENGTH_SHORT);
            toast.show();
            }else{
                 Toast toast = Toast.makeText(this, "All Fields are        Required", Toast.LENGTH_SHORT);
}
        }
    }

答案 1 :(得分:1)

我们可以使用lubridate

library(lubridate)
period_to_seconds(hms(str1))/60
#[1] 301.25

或者

as.numeric(hms(str1))/60
#[1] 301.25

数据

str1 <- "PT5H1M15S"