あるデータフレームの特定のセルを別のデータフレームの特定のセルで分割したいと考えています。R:別のデータフレーム内のあるセルによって特定のセルを1つのデータフレームに分割する
Dataframe1 - データセットの列名は、Compound_Number、Compound_Concentration、Time、Technical_Replicate、およびColony_Countです。合計で、12の化合物、3つの濃度、3つの時点、および6つの技術的複製がある。
Dataframe2 - 列名は、Compound_Number、Technical_Replicate、Time、およびReplicate_Meanです。合計で、12の化合物、3つの時点、および1つの複製平均がある。
Dataframe1のColony_CountをDataframe2のReplicate_Meanで除算する必要がありますが、除算がペアになっていることを確認する必要があります(たとえば、複合番号は同じでなければならず、時間も同じでなければなりません技術的な複製)。私は手でこのすべてを行うことができることを知って
...その後
#Dataframe1 (corpus)
C1_T1_TR1 <- corpus[ which(corpus$Compound_Number==1 & corpus$Technical_Replicate==1 & corpus$Time==1),]
#Dataframe2 (normalizing_means)
NC1_T1_TR1 <- normalizing_means[ which(normalizing_means$Compound_Number==1 & normalizing_means$Time==1 & normalizing_means$Technical_Replicate==1),]$Replicate_Mean
私が行うことができます...しかし
C1_T1_TR1$Colony_Count/N1_T1
、これらの行を書き出すことを意味複数回ですべての化合物、複製物、および時間を捕捉し、それらの選択および操作の結果を単一のデータフレームに戻すことができます。これは面倒であり、私はそれを行うより良いRの方法があると確信しています。私はこれを見ました:https://stackoverflow.com/questions/33150534/divide-multiple-columns-of-one-data-frame-by-row-names-value-of-another-datafram,しかし、それは私が必要とするものではありません - 任意の支援が大歓迎です。
ここには少しのデータがあります。私はDataframe2の対応する行を見つける必要が
Compound_Number Compound_Concentration Time Technical_Replicate Colony_Count
1 0.1 mM 5 4 46000000
:
Dataframe1
Compound_Number Compound_Concentration Time Technical_Replicate Colony_Count
1 0.1 mM 5 4 46000000 #This is the example line
1 0.05 mM 5 4 109000000
1 0.02 mM 5 4 220000000
1 0.1 mM 25 4 30000
1 0.05 mM 25 4 16000000
1 0.02 mM 25 4 340000000
1 0.1 mM 1 1 5000000
1 0.05 mM 1 1 220000000
1 0.02 mM 1 1 210000000
1 0.1 mM 5 1 9000000
1 0.05 mM 5 1 70000000
1 0.02 mM 5 1 57000000
1 0.1 mM 5 2 560000
1 0.05 mM 5 2 34000000
1 0.02 mM 5 2 300000000
1 0.1 mM 25 2 10000
2 0.05 mM 1 3 120000000
2 0.02 mM 1 3 210000000
2 0.1 mM 5 3 280000000
2 0.05 mM 5 3 240000000
2 0.02 mM 5 3 80000000
2 0.1 mM 25 3 110000000
2 0.05 mM 25 3 250000000
2 0.02 mM 25 3 350000000
2 0.1 mM 1 4 290000000
2 0.05 mM 1 4 340000000
2 0.05 mM 1 1 300000000
2 0.02 mM 1 1 110000000
2 0.1 mM 5 1 510000000
2 0.05 mM 5 1 420000000
Dataframe2
Compound_Number Technical_Replicate Time Replicate_Mean
1 1 1 288000000
1 1 5 232000000
1 1 25 230000000
1 2 1 351666666.666667
1 2 5 320000000
1 2 25 291666666.666667
1 3 1 570000000
1 3 5 493333333.333333
1 3 25 701666666.666667
1 4 1 425000000
1 4 5 630000000 #This is the example line
1 4 25 380000000
1 5 1 473333333.333333
1 5 5 463333333.333333
1 5 25 433333333.333333
1 6 1 478333333.333333
1 6 5 453333333.333333
1 6 25 520000000
2 1 1 391666666.666667
2 1 5 356666666.666667
2 1 25 373333333.333333
2 2 1 445000000
2 2 5 423333333.333333
2 2 25 353333333.333333
2 3 1 248333333.333333
2 3 5 281666666.666667
2 3 25 151666666.666667
2 4 1 325000000
2 4 5 360000000
2 4 25 420000000
2 5 1 156666666.666667
2 5 5 298333333.333333
2 5 25 338333333.333333
2 6 1 313333333.333333
2 6 5 318333333.333333
2 6 25 276666666.666667
は、明確にするために、これはDataframe1から例行です。
Compound_Number Technical_Replicate Time Replicate_Mean
1 4 5 630000000
そして、私が630000000.
で4600万を分割したい場合は、事前にありがとうございます。
3つの列のデータフレームをマージするだけです...?その後、分割する。 – sirallen
@sirallen - OFコース!問題が解決しました。ありがとうございました。 – cer