私は答えを見回し、解決策を考え出していません。Rデータフレームで1列を複数の列に分割する方法
私は(サンプル努力の単位)データフレームに単一の列で私のデータフレームの倍数(〜60)の列(種数)を分割しようとしています
私は解決策を考え出すことができました私が好むよりも面倒です。今書いているように、私は間違ってコードの最後の行を2回実行し、2回に分割して値を混乱させる可能性があります。
ここでは、私が使用したソリューションを示す簡単な例を示します。何かクリーナーの提案?
#short data.frame with some count data
#Hours is the sampling effort
counts=data.frame(sp1=sample(1:10,10),sp2=sample(1:10,10),
sp3=sample(1:10,10),sp4=sample(1:10,10),
Hours=rnorm(10,4,1))
#get my 'species' names
names=colnames(counts)[1:4]
#This seems messy: and if I run the second line twice, I will screw up my values. I want to divide all 'sp' columns by the single 'Hours' column
rates=counts
rates[names]=rates[,names]/rates[,'Hours']
PS:私は、%>%でパイピングされてきた、と誰もが、私はちょうど新しいdata.frameを作成せずに「数」data.frameを変換できるソリューションを持っているのであれば、それはうねりになります!
私は(例えば。mutate_each?)ハドレーの機能の一つは、私が必要なものを持っていることが疑われるPSSが、私はそれを把握することができていない。..
が、これは '数は%>%mutate_each(低速運行(./時間)、-hours)' – agenis
しかし、あなたはすぐそこにISNしているしてみてください'mutate_each'のヘルプファイルの一例です – agenis
あなたの例にとって重要でない限り、' rm(list = ls()) 'のようなコードを投稿しないでください。誰かが誤ってコピー/ペーストして実行してしまうようなものではありません。 – Gregor