2016-12-20 17 views
1

Rからタブ区切りのtxtファイルをエクスポートしようとしましたが、80番目の項目ごとに行を変更したいと思います。例えば行数の上限を設定するR

a<-rep(1,200) 

次に、行200 1Sがあります。私は以下のコードでベクトルをエクスポートします。

write.table(t(a), "a.csv", ,sep="\t", col.names = F, row.names = F) 

しかし、私は80番目の項目の次の行に進みたいと思います。言い換えれば、行の上限を80に設定したいと考えています。

ありがとうございます!

+1

おそらく 'lst < - split(a、(seq_along(a)-1)%/%80 + 1)が必要です。 ; m1 < - do.call(rbind、lapply(lst、 'length < - '、max(lengths(lst)))); write.table(m1、 "a.csv"、sep = "\ t"、col.names = FALSE、row.names = FALSE) ' – akrun

+0

ありがとう!それは十分な答えだった: –

+0

答えとして私のコメントを掲載。 [ここ](http://stackoverflow.com/help/someone-answers)にチェックを入れることもできます。 – akrun

答えて

0

我々は、すべてのlist要素に等しくなるとwrite.table

lst <- split(a, (seq_along(a)-1)%/%80 + 1) 
m1 <- do.call(rbind, lapply(lst, `length<-`, max(lengths(lst)))) 
write.table(m1, "a.csv", sep="\t", col.names = FALSE, row.names=FALSE) 
を使用してファイルにそれを書くために lengthをパディングした後、「」 rbind%/%で作成したグループを使用してベクトルの listlist要素を分割することができます
関連する問題