2017-12-18 8 views
-2

私は5つの変数を集計することによって「信頼の政治」インデックスを作成しました。私は、インデックス数の任意の小数を持たないようにするために数字を丸めるしたいのに対し、インデックスの小数点以下を切り捨てる

attach(ess_variablen) 
aggr_trst <- (1/5)*(trst_prl+trst_leg+trst_part+trst_politic+trst_polit) 

しかし、結果は今、1つの小数点が含まれています。

インデックスで作成された数値を丸めるために回避策を見つけることができませんでした。誰もそれを達成する方法を知っていますか?ありがとうございました!

+0

タグにプログラミング言語を追加し、コードをコンパイルできるように値の宣言を表示できますか?あなたが話しているような丸めが起こっているとは思えません。 –

+0

私はこの問題では非常に経験が不安です(ごめんなさい!)。私はRを使用していますが、値はすべて0〜10の5つの変数になります。したがって、私のインデックスのデータは5.8,3.2などの数字です。これは丸めたい数値です。5.8が6になり、3.2が3になります。 – Cantablu

答えて

-1

編集:あなたは http://rextester.com/WURVZ7294

を試してみたい場合は生きるスニペットあなたは

notRound <- (1/5) * (1.2+2.3+3.3) 
print(notRound) 
roundUp <- ceiling(notRound) 
print(roundUp) 
roundDown <- floor(notRound) 
print(roundDown) 

ニーズに依存ceiling()floor()機能を試すことができます以前のソリューションは不便

ために残念に動作していなかったようです

+0

私のインデックスがaggr_trstと呼ばれる場合、 'Fix(aggr_trst)' そうですか? – Cantablu

+0

はいそれは – CharybdeBE

+0

でなければなりません。もし私が 'Fix()'を使うと、前と同じ正確な数字(小数点付き)を表示する 'struct(c(5.8、0.4など)'で始まる新しいウィンドウがポップアップします。 .. このコマンドを使用するには、インストールする必要がある特定のパッケージがありますか? – Cantablu

0

round()関数を使用して、小数点以下桁数として0を使用する場合は、最も近い整数に丸めます。以下の例は、均一な乱数のデータフレーム内の行を合計することによってこれを示しています。

set.seed(950141237) 
data <- as.data.frame(matrix(runif(20),nrow=5,ncol=4)) 
data 
data$index <- round(rowSums(data),0) # round to 0 decimal places to obtain whole numbers 
data 

...と出力します。

> set.seed(950141237) 
> data <- as.data.frame(matrix(runif(20),nrow=5,ncol=4)) 
> data 
     V1  V2   V3   V4 
1 0.07515484 0.8874008 0.37130877 0.05977506 
2 0.30097513 0.8178419 0.05203982 0.10694951 
3 0.82328607 0.4182799 0.24034152 0.52173278 
4 0.52849399 0.8690592 0.66814229 0.66475498 
5 0.01914658 0.8322007 0.41399458 0.19649338 
> data$index <- round(rowSums(data),0) # round to 0 decimal places to obtain whole numbers 
> data 
      V1  V2   V3   V4 index 
1 0.07515484 0.8874008 0.37130877 0.05977506  1 
2 0.30097513 0.8178419 0.05203982 0.10694951  1 
3 0.82328607 0.4182799 0.24034152 0.52173278  2 
4 0.52849399 0.8690592 0.66814229 0.66475498  3 
5 0.01914658 0.8322007 0.41399458 0.19649338  1 
+0

私はこれを理解していません右は... runif(20)とは何ですか? – Cantablu

+0

20個の一様乱数runif(20)を使用してサンプルデータフレームを作成し、それを行列に変換してからデータフレームに変換しました。 –

関連する問題