0

私はCSVファイルに次のものがあり、Rで以下の同じ形式にしたい

01:00:00 02:00:00 03:00:00
15       80       67
30       44       2

それらを単一の変数に入れることができました

textus="01:00:00 02:00:00 03:00:00 

15 80 67 

30 44 2"

それで

data <- unname(as.matrix(read.table(text = textus)))

その後、次のコマンドラインでそれらをまとめようとしています:

data1 <- rep(data[1,],data[2,],data[3,])

しかし、次のエラー行が表示され続けます。

Message d'avis :
In rep(dat[1, ], dat[2, ], dat[3, ]) :
seul le premier élément de l'argument 'length.out' est utilisé

エラーはフランス語で、事態を悪化させています。

私は次のことを試しましたが、Rにやりたいことの半分しかやっていない場合でも機能します:

data1<-rep(dat[1,],dat[2,]) 

# results
01:00:00 02:00:00 03:00:00
15       80       67

data2<-rep(dat[1,],dat[3,])

# results
01:00:00 02:00:00 03:00:00
30       44       2

私が見逃していることについて何か意見があれば、喜んで耳を傾けます。

一番。

4

1 に答える 1

1

途中でファイルに書き込むことを気にしない場合は、これが最も簡単な方法です。

tmp <- read.table(text=textus)

write.table(t(tmp), "tmp.csv", row.names = FALSE, col.names = FALSE, sep = ",")

read.table("tmp.csv", sep = ",")
#         V1 V2 V3
# 1 01:00:00 15 30
# 2 02:00:00 80 44
# 3 03:00:00 67  2

これを R で (入力ファイルのように) 転置する理由はありません。R の data.frame 構造は、列に変数、行に観測値を持つように設計されており、ほとんどの関数はこれに最適化されています。転置された形式で印刷したいだけの場合は、 を変更する必要がありprint.data.frameます。

于 2013-08-02T11:06:10.393 に答える