質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Q&A

解決済

2回答

4259閲覧

Rで複数行の平均を求める

qs05t

総合スコア7

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

0グッド

0クリップ

投稿2019/05/27 01:47

前提・実現したいこと

「R」でイールドカーブの主成分分析を行っています。
ファイナンスのためのRプログラミング」2.5 主成分分析によるイールドカーブ分析のコードを写経する際に以下のエラーメッセージが発生しました。
実現したいことは、1回で複数行の平均を求めることです。

発生している問題・エラーメッセージ

エラーメッセージ
警告メッセージ:
mean.default(data[, 2:14]) で:
引数は数値でも論理値でもありません。NA 値を返します

該当のソースコード

data <- read.csv("jgbdata.csv")
Mean <- mean(data[,2:14])

「R」 ### 試したこと 財務省「[国債金利情報](https://www.mof.go.jp/jgbs/reference/interest_rate/index.htm)」の「過去の金利情報(昭和49年(1974年)~)」からデータをダウンロードし、基準日の日付と国債満期期間の金利のデータ(1年~40年)の部分を切り取り、「jgbdata.csv」にデータを上書きし、コードを実行しました。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

求めたいのは各行の平均ではなく列ごとの平均ですね。

meanの対象がデータフレームのままだとうまくいかないようです。

sapply(data, function(x){mean(unlist(x))})

投稿2019/05/27 04:28

KojiDoi

総合スコア13671

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

読み込んだ際に、データの型がを明示的に指定していないことが原因のように見えます。

https://qiita.com/dokokano_panda/items/f12d1d2e4c7f63020440

data <- read.csv("jgbdata.csv", header=F,colClassed="numeric")

のような具合にやれば良さそうですが、「-」というデータも含まれるようなので、
この辺は事前加工が必要かもしれません。または、集計対象の列のみ、読み込んだ後にas.numeric で必要なカラムを変換するとか。

投稿2019/05/27 02:13

tetsunosuke

総合スコア1292

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

qs05t

2019/05/27 02:28

「-」というデータはあらかじめ事前加工をしていて、sapply(data, class)を実行したら、 Date X1 X2 X3 X4 X5 X6 "factor" "numeric" "numeric" "numeric" "numeric" "numeric" "numeric" X7 X8 X9 X10 X15 X20 X25 "numeric" "numeric" "numeric" "numeric" "numeric" "numeric" "numeric" X30 X40 "numeric" "numeric" という結果が得られました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問