これは私が特定のバッチが最高のスコアを持っている行を特定したら、私のデータフレームが連結し、
library(data.table)
dt <- fread('
Batch Score Type Description
A 1 fruit apple
A 2 beverage pepsi
A 3 food rice
B 1 beverage coke
B 2 fruit banana
C 1 food butter
D 1 food bread
')
次のようになります/ data.tableデータフレーム内の改行を使用して2つの列を貼り付け、私がしたいです改行との間でタイプと説明の間にギャップを使用して、Type
とDescription
を連結して(最初の行から最高のスコアを持つ最後の行までのすべての要素)貼り付けます。それは次のように見えるように貼り付けがそのバッチのための最高のスコアを行件まで行われます。
Batch Score(Max) Description2
A 3 fruit apple
beverage pepsi
food rice
B 2 beverage coke
fruit banana
C 1 food butter
D 1 food bread
行バッチの最高得点はまた私にそのバッチの最後の行であることを起こるとデータフレーム。私が試してみました:
dt[, .(MaxScore = max(Score),
Description2 = cat(paste(Type, Description), sep="\n")),by = .(Batch)]
目標は1列(説明2)と各batch.Yourヘルプの1行のすべての情報が高く評価されて表示することです!
フランクにお答えいただきありがとうございます。その情報をすべて1つの列(Description2)にまとめる理由は、そのフィールドをsalesforceにエクスポートしようとしているからです。 Salesforceのレポートはかなり悪く、その領域外のデータではうまくいきません。 1つのフィールドを作成することで、すべての情報を読み込み可能な形式で表示し、それをsalesforceにアップロードできるようにすることを考えていました。 – gibbz00
お元気ですか?あなたの出力をデータフレームに強制するにはどうすればいいですか?そして、最終的な出力からMax Scoreをどのように取り出すことができますか?その部分は必要ありません。 – gibbz00
@gibbz「最大得点」部分は 'newrow'に現れます。そのため、最後の' rbind'からその部分を除外します。 data.frameが必要な場合は 'as.data.frame'を使用してください。あなたは改行などについて言及しました。これは、あなたがテキスト出力の後ろにいるように私には響きました、おそらくfwfでインポートしていました。 – Frank