3

私はRでプログラミングしていますが、次の問題が発生しました。

私はかなり長いデータ文字列 jb を持っています。これの簡単なバージョンを次に示します。

jb:    a     b     frequency               jb.expanded: a    b   
       5     3        2                                 5    3
       5     7        1                                 5    3
       9     1        40                                5    7
       12    4        5                                 9    1
       12    5        13                                9    1
                                                        ...  ...   

行を複製したいのですが、複製の頻度は列の頻度です。つまり、最初の行は 2 回複製され、2 番目の行は 1 回複製されます。私はすでにコードでその問題を解決しました

jb.expanded <- jb[rep(row.names(jb), jb$freqency), 1:2] 

ここに問題があります:

頻度コーナーのいずれかの数値が 10 より大きい場合は常に、複製された列の数が間違っています。例えば:

Frequency: 43 --> 14 columns
           40 --> 13 columns
           13 --> 11 columns
           14 --> 12 columns

手伝って頂けますか?それを修正する方法がわかりません。また、インターネット上で何も見つかりません。

ご協力いただきありがとうございます!

4

3 に答える 3

2

これはもっとコメントかもしれませんが、他のすべての回答が新しいオプションを示唆していることがjb$freqencyわかります.jb.expandedを作成するときにスペルを修正jb$frequencyし、整数に変換すると、質問で言及した構造も機能します.

そして、jb$frequency が要因であると考える理由は、正しくない周波数が 11、12、13、14 のようにきちんと並べられているためです。

于 2013-10-22T17:08:13.043 に答える