プロが教えるわが家の防犯対策術!

5段階評価されている数値(ただし、2.4、3.8といった端数の数値も存在します)を、3段階の数値に置き換えたい場合の方法が分からず困っています。

(例)5→3へ、3→2へ、1→1へ その間の端数は3~1の適した端数へ置き換えたい。

n進法→n進法等で検索してみたのですが該当する数式が見つけられませんでした。
どなたかご存知でしたらぜひ教えてください。

A 回答 (5件)

A1に1から5までがあるとすると


B1は
=(A1-1)/4*2+1
といった具合に。

端数が気に入らないときは
=ROUND((A1-1)/4*2+1,1)
といった具合でも。
    • good
    • 0
この回答へのお礼

keithin様

早速回答いただきありがとうございます。大変助かりました。
端数は端数として残したいので、上の計算式を活用させていただきます。

今後、応用できるようになっておきたいのですが、例えばn段階の評価をm段階へ置き換える場合、
どのように考えればよろしいのでしょうか?

お礼で再度質問を重ねてしまい、大変申し訳ありませんが
もしよろしければお願いいたします。

お礼日時:2011/11/22 14:21

>今後、応用できるようになっておきたいのですが、例えばn段階の評価をm段階へ置き換える場合、


>どのように考えればよろしいのでしょうか?

中学数学の直線の傾きを考える。
x = 1~n段階の評価
y = 1~m段階の評価
として xの値をyに換算します。変化は比例するので、直線y=ax+bを考えます
             既知1 既知2 例
x = 1~n段階の評価  1  n  n=5
y = 1~m段階の評価  1  m  m=3
直線の傾きはyの増加分/xの増加分
よって、傾きaは (m-1)/(n-1)
あとは既知1をxに代入して
1=(m-1)/(n-1)*1+b
b=-(m-1)/(n-1)+1
代入して
y=(m-1)/(n-1)x-(m-1)/(n-1)+1
つまり
y=((m-1)/(n-1)-1)x+1



直感的に考える。(0~100%がキーワードかもしれない)
1から始まっているので1引く
変化はn-1分なのでn-1で割って、0~100%換算し、
m-1を掛けて0~m-1までに換算し、
+1して 1~mに換算される。
(X-1)/(n-1)*(m-1)+1


# ベストアンサーはkeithinさんへ
    • good
    • 0

ちょっと修正 引く場所間違った m(_ _)m


y=(m-1)/(n-1)x-(m-1)/(n-1)+1
つまり
y=(m-1)/(n-1)(x-1)+1
    • good
    • 0
この回答へのお礼

CoalTar様

丁寧なご回答本当にありがとうございます。
久しぶりに数学の式を見て、理解までにしばらく時間がかかりました・・・(^^;
もともと算数・数学が苦手な私にとって、このようにさっと考えられるみなさんは尊敬の的です。

ありがとうございました。

お礼日時:2011/11/25 09:15

最初の回答でも確認しましたが,


>A1に1から5までがあるとすると

これは1から始まって1.2や2.0,4.9や5.0まであるけど,ゼロや0.2,5.3とかは無い,という前提です。いいですね?



1~5を1~3に振り分ける:
=(A1-1)/(5-1)*(3-1)+1
1から5まで,あいだの幅が4あるところから,1から3までの2の幅に比例配置します。


A1にあるa~bを,c~dに振り分ける:
=(A1-a)/(b-a)*(d-c)+c
です。
aやcは,必ずしも「1から」とは限らない評点も可能ですね。
    • good
    • 0
この回答へのお礼

keithin様

数度にわたりありがとうございます。

最初の前提条件は、そのとおりです。
「間の幅が4ある」というところに着目するところからなんですね。
すごくよく分かり、スッキリしました。
ありがとうございます。

お礼日時:2011/11/25 09:18

>応用できるようになっておきたいのですが、例えばn段階の評価をm段階へ置き換える場合


気分的には「置き換える」、かもしれないが、計算のしなおし(関数式の再設定)だろう。
VLOOKUP関数のTRUE型を勉強して、区分(区画)の境界の値は自分で別途計算しなおして、
変換表を作り直せば、新しい区分に対応するコードなりを、返せるよ。
1を3区分するなら
$E$1:$f$3に
01
0.342
0.673
のような対応表を作っておいて
=VLOOKUP(A1,$E$1:$F$3,2,TRUE)
の式で0.33までは1、0.66までは2、それ以上は3になる。こういうので良いのかな。
    • good
    • 0
この回答へのお礼

imogasi様

VLOOLUPは仕事で頻繁に使う数式なので、教えていただいた方法は違和感なくすっと入ってきました。
変換表を作っておくというのも一つの方法だったんですね。
全く思い浮かびませんでした・・・。
今回の質問で、アプローチの仕方はいろいろあることを実感しました。
ありがとうございました。

お礼日時:2011/11/25 09:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!