2

一度自動的に作成され、使用された row.names からいくつかの情報を編集したいと思いsplitますcut2。次のコードを参照してください。

#Mock data
date_time <- as.factor(c('8/24/07 17:30','8/24/07 18:00','8/24/07 18:30',
                        '8/24/07 19:00','8/24/07 19:30','8/24/07 20:00',
                        '8/24/07 20:30','8/24/07 21:00','8/24/07 21:30',
                        '8/24/07 22:00','8/24/07 22:30','8/24/07 23:00',
                        '8/24/07 23:30','8/25/07 00:00','8/25/07 00:30'))
U. <- as.numeric(c('0.2355','0.2602','0.2039','0.2571','0.1419','0.0778','0.3557',
                 '0.3065','0.1559','0.0943','0.1519','0.1498','0.1574','0.1929'
                 ,'0.1407'))

#Mock data frame
test_data <- data.frame(date_time,U.)


#To use cut2
library(Hmisc)

#Splitting the data into categories
sub_data <- split(test_data,cut2(test_data$U.,c(0,0.1,0.2)))
new_data <- do.call("rbind",sub_data)
test_data <- new_data

「test_data」には、「[0.000,0.100).6」、「[0.000,0.100).10」などの値を持つ追加の列「row.names」があることがわかります。

"[0.000,0.100)" を削除して "." の後の数字を保持するにはどうすればよいですか? 後で元の行番号でこれらの行を参照できるように、6 や 10 などですか?

これを行うための他のより良い方法はありますか?

4

3 に答える 3

1

sub_data の名前を NULL に設定することもできます。

names(sub_data) <- NULL     
test_data <- do.call('rbind', sub_data)
row.names(test_data)
#[1] "6"  "10" "5"  "9"  "11" "12" "13" "14" "15" "1"  "2"  "3"  "4"  "7"  "8" 
于 2014-06-26T04:03:40.883 に答える