« 2014年6月 | トップページ | 2014年9月 »

2014年8月14日 (木)

[R]外部コマンドを実行する

shell関数かsystem関数を使う。system関数の実行後の表示が不要であれば、waitオプションでFALSEを使用すること。

> shell("dir")
ドライブ C のボリューム ラベルは ○○ です
ボリューム シリアル番号は ○○ です
(以下、表示省略)
> system('"C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"')
警告メッセージ:
命令 '"C:\Program Files (x86)\Mozilla Firefox\firefox.exe"' の実行は状態 1 を持ちました 
> system('"C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"', wait = FALSE)

2014年8月13日 (水)

[R]論理型ベクトルの値がすべてTRUE(FALSE)か否か判定する

all関数を使えばよい。なお、類似の判定をする場合はany関数を使う。

all() - 与えられた論理ベクトルがすべてTRUEであればTRUEを返す
any() - 与えられた論理ベクトルに1つでもTRUEが含まれていればTRUEを返す

> bool1 <- c(TRUE, TRUE, TRUE)
> bool2 <- c(TRUE, TRUE, FALSE)
> bool3 <- c(FALSE, FALSE, FALSE)
> all(bool1)  # すべてTRUEの場合はTRUE
[1] TRUE
> all(bool2)  # 1つでもFALSEがある場合はFALSE
[1] FALSE
> all(!bool3)  # すべてFALSEか否かの判定は論理演算子の!(否定)を使う
[1] TRUE
> any(bool2)  # 1つでもTRUEがあればTRUE
[1] TRUE
> any(bool3)  # 1つもTRUEがなければFALSE
[1] FALSE
> any(!bool2)  # 1つでもFALSEがあるか否かの判定は論理演算子の!(否定)を併用する
[1] TRUE
> any(!bool1)  # 同上
[1] FALSE

2014年8月 8日 (金)

[R]警告メッセージ「incomplete final line found by readTableHeader on '○○'」

read.table関数を使用して、データをテキストファイルから読み込もうとしたときに、以下のような警告メッセージが表示されることがある。以下は、テキストファイルdata.datからデータを読み出す例。

> read.table("data.dat")
(表示省略)
警告メッセージ:
In read.table("data.dat") :
  incomplete final line found by readTableHeader on 'data.dat'

data.datの最終行に、改行が含まれてないときに、この警告メッセージが表示される(ちなみに、読み込みは特に問題なく完了する)。データファイルの最終行の最後にカーソルを移動し、そこでEnterキーを押して、データファイルを保存すればよい。

2014年8月 5日 (火)

[Excel 2010]グラフで、途中の値が欠けているデータを折れ線グラフを繋ぐ

Excelは標準状態では、折れ線グラフは途中の値が欠けていると、値はプロット点として描画されるが、折れ線グラフにしたときには値が欠けている箇所では線が結ばれない。線が引かれるようにするには以下のようにする。

線を描画するグラフのグラフ上で右クリック。

現れたメニューの「データの選択」をクリック。

現れた「データソースの選択」ダイアログボックスの左下に、ボタン「非表示および空白のセル」がある。このボタンを押す。

「非表示および空白セルの設定」ダイアログボックスが現れる。ここで空白セルの表示方法の設定を行うことができる。初期状態では以下のように「空白」が選択されていると思うが、その下のラジオボタン「データ要素を線で結ぶ」をクリックして、「OK」ボタンを押す。
Dialog

「データソースの選択」ダイアログボックスに戻るが、この時点で、プロット点が線で結ばれるようになっているはず。「OK」ボタンを押す。これで確定する。

2014年8月 4日 (月)

[Fortran]小数を整数に丸めるために切り上げ、切り捨てをする

Fortranでは小数を整数に丸めるための切り上げ、切り捨ては、切り上げはceiling関数、切り捨てはfloor関数、int関数で行うことができる。負の値に関する切り捨てについては、floor関数とint関数で扱いが違うので注意。切り捨てはint関数を使うのが無難。

! 整数への切り上げ、負の数はより大きい整数へ
write(*, '(4(i3,1x))') ceiling(-1.5), ceiling(-0.5), ceiling(0.5), ceiling(1.5)
! 整数への切り捨て、負の数はより小さい整数へ
write(*, '(4(i3,1x))') floor(-1.5), floor(-0.5), floor(0.5), floor(1.5)
! 整数への切り捨て、負の数は0に近い整数へ
write(*, '(4(i3,1x))') int(-1.5), int(-0.5), int(0.5), int(1.5)

出力結果

-1   0   1   2
-2  -1   0   1
-1   0   0   1

2014年8月 2日 (土)

[R]数値を整数へ切り上げ、切り捨てする

切り上げにはceiling関数、切り捨てにはfloor関数、trunc関数を使えばよい。切り捨ては負の数の扱いについてfloor関数とtrunc関数で扱いが違うので注意。切り捨てはtrunc関数を使うのが無難。

> d <- c(-1.5, -0.5, 0.5, 1.5)
> ceiling(d)  # 整数への切り上げ、負の数はより大きい整数へ
[1] -1  0  1  2
> floor(d)  # 整数への切り捨て、負の数はより小さい整数へ
[1] -2 -1  0  1
> trunc(d)  # 整数への切り捨て、負の数は0に近い整数へ
[1] -1  0  0  1

« 2014年6月 | トップページ | 2014年9月 »

無料ブログはココログ

■■

■■■