0
私は、次の構造を有する(連続したペアから構築された)データフレームがあります。分割してデータフレームに列を追加 - R
Name Var1 Var2 Comments
A 0.5 4 Zone1
A1 0.9 5 Zone2
B 0.3 55 Zone1
B1 0.1 7 Zone2
C 2 8 Zone1
C 3 9 Zone2
D 0.2 0.6 Zone1
D 3 4 Zone2
を、私はそれを分割し、次の構造を持つ新しいデータフレームに保存したいです:
Name Var1 Var2 Comments Name.1 Var3 Var4 Comments.1
A 0.5 4 Zone1 A1 0.9 5 Zone2
B 0.3 55 Zone1 B1 0.1 7 Zone2
C 2 8 Zone1 C 3 9 Zone2
D 0.2 0.6 Zone1 D 3 4 Zone1
可能でしょうか?誰かが私を助けることができます。その後、
あなたはゾーンでデータを分割することができるはずおかげ
ありがとうございます。本当にZone1はエラーでした。重複したヘッダー(Var1、Var2、Comments)を取得すると、Var1.1、Var2.1、およびComments.1という名前になる可能性があります(サーテ名を実行する方が簡単でしょう)。 – user2916044
これは動作します:colnames(ワイド)< - c(colnames(df)、paste(colnames(df)、 "。1"、sep = ""))。このようなすべてのことを形や広がりで行うより良い方法があるかもしれません...私にとって難しいことは、あなたがゾーン1とゾーン2が一致するかどうかの明確な識別子がないように見えることです。名前の最初の文字と一致するもの.... – MPhD
この方法では、データが誤ってソートされる可能性があります。それは、マッチしたゾーンをリンクする重要な変数を使ったほうがいいでしょう。そして、そこから広いフォーマットに行くためにtidyrやreshapeを使ってください... AkrunからArunによる重複した答えへのリンクに基づいて、あなたはライブラリ.dable); df(ID); df $ ID <-substr(df $ Name、1,1); df <-data.table(df)df $ ID <-substr(df $ Name、1,1)dcast(wide2、ID〜rowid(ID)、value.var = c "、" Var2 "、" Comments "、sep ="。 "))私は動作させるためにROWIDを取得することはできませんが、あなたは別の/より新しいバージョンのdata.tableが必要な場合がありますか?しかし、私はRをすぐに見つけ出すために再起動したくない...;) – MPhD