r
には、ID
文字列が10文字以下のdata frame
(df
)があります。Rに複数の列を作成するために、データフレームの列内の文字数で文字列を分割します。
df:
ID Var1 Var2
1 0334KLM001 aa xx
2 1334HDM002 zvv rr
3 2334WEM003 qetr qwe
4 3334OKT004 ff sdf
5 4334WER005 ee sdf
6 5334BBC006 qly ssg
7 6334QQQ007 kk htj
8 7334AAA008 uu yjy
9 8334CBU009 ww wttt
10 9334MLO010 aa dg
意向:
r
コマンドを使用して、私は文字だけの番号で二つの追加列にID
を分割したいと思います。例えば、私はSpl_1
がID
列の最初の4つの文字を持っており、Spl_2
はID
文字(すなわち 5時10分)の残りの部分を持っているdf
に2列(Spl_1
& Spl_2
)を追加したいと思います。
期待output
は次のように次のようになります。
output:
ID Var1 Var2 Spl_1 Spl_2
1 0334KLM001 aa xx 0334 KLM001
2 1334HDM002 zvv rr 1334 HDM002
3 2334WEM003 qetr qwe 2334 WEM003
4 3334OKT004 ff sdf 3334 OKT004
5 4334WER005 ee sdf 4334 WER005
6 5334BBC006 qly ssg 5334 BBC006
7 6334QQQ007 kk htj 6334 QQQ007
8 7334AAA008 uu yjy 7334 AAA008
9 8334CBU009 ww wttt 8334 CBU009
10 9334MLO010 aa dg 9334 MLO010
は、私は、次の質問読み:Q1 & Q2 .Although非常に有益を、それでも、私は、文字番号で刺さを分割する方法ことを取得できませんでした。私はstr_sub
コマンドを使用して学ぶ 'stringr'パッケージを見つけました。私は数で分けることができます。以下を参照: library(stringr)
ID <- "0334KLM001"
str_sub(ID, c(1,5), c(4,10))
[1] "0334" "KLM001"
しかし、私は上記のようoutput
を取得するために他のr
コマンド(複数可)と結合する方法がわかりませんか?
'DF $ spl_1 <ため - SUBSTR(DFの$のID、1、4)。 df $ spl_2 < - substr(df $ ID、5、10) 'それを行う必要があります。 – lmo