2021年1月8日金曜日

Rの基本操作コマンド

概要

Rで基本的なコマンドをメモしようと思います。

コマンド

①コンソール出力
> print("hoge")
hoge

②コメントアウト
> # 頭に「#」をつける

③コマンドのヘルプの確認方法

> # ヘルプを表示したいコマンドの頭に「?」を付ける
> ?read.xlsx
read.xlsx {openxlsx}	R Documentation
Read from an Excel file or Workbook object
Description
Read data from an Excel file or Workbook object into a data.frame
Usage
read.xlsx(
  xlsxFile,
  sheet = 1,
  startRow = 1,
  colNames = TRUE,
  rowNames = FALSE,
  detectDates = FALSE,
  skipEmptyRows = TRUE,
  skipEmptyCols = TRUE,
  rows = NULL,
  cols = NULL,
  check.names = FALSE,
  sep.names = ".",
  namedRegion = NULL,
  na.strings = "NA",
  fillMergedCells = FALSE
)
Arguments
xlsxFile	An xlsx file, Workbook object or URL to xlsx file.
sheet	The name or index of the sheet to read data from.
startRow	first row to begin looking for data. Empty rows at the top of a file are always skipped, regardless of the value of startRow.
colNames	If TRUE, the first row of data will be used as column names.
rowNames	If TRUE, first column of data will be used as row names.
detectDates	If TRUE, attempt to recognise dates and perform conversion.
skipEmptyRows	If TRUE, empty rows are skipped else empty rows after the first row containing data will return a row of NAs.
skipEmptyCols	If TRUE, empty columns are skipped.
rows	A numeric vector specifying which rows in the Excel file to read. If NULL, all rows are read.
cols	A numeric vector specifying which columns in the Excel file to read. If NULL, all columns are read.
check.names	logical. If TRUE then the names of the variables in the data frame are checked to ensure that they are syntactically valid variable names
sep.names	One character which substitutes blanks in column names. By default, "."
namedRegion	A named region in the Workbook. If not NULL startRow, rows and cols parameters are ignored.
na.strings	A character vector of strings which are to be interpreted as NA. Blank cells will be returned as NA.
fillMergedCells	If TRUE, the value in a merged cell is given to all cells within the merge.
Details
Formulae written using writeFormula to a Workbook object will not get picked up by read.xlsx(). This is because only the formula is written and left to be evaluated when the file is opened in Excel. Opening, saving and closing the file with Excel will resolve this.
Value
data.frame
Author(s)
Alexander Walker
See Also
getNamedRegions
Examples
xlsxFile <- system.file("extdata", "readTest.xlsx", package = "openxlsx")
df1 <- read.xlsx(xlsxFile = xlsxFile, sheet = 1, skipEmptyRows = FALSE)
sapply(df1, class)
df2 <- read.xlsx(xlsxFile = xlsxFile, sheet = 3, skipEmptyRows = TRUE)
df2$Date <- convertToDate(df2$Date)
sapply(df2, class)
head(df2)
df2 <- read.xlsx(
  xlsxFile = xlsxFile, sheet = 3, skipEmptyRows = TRUE,
  detectDates = TRUE
)
sapply(df2, class)
head(df2)
wb <- loadWorkbook(system.file("extdata", "readTest.xlsx", package = "openxlsx"))
df3 <- read.xlsx(wb, sheet = 2, skipEmptyRows = FALSE, colNames = TRUE)
df4 <- read.xlsx(xlsxFile, sheet = 2, skipEmptyRows = FALSE, colNames = TRUE)
all.equal(df3, df4)
wb <- loadWorkbook(system.file("extdata", "readTest.xlsx", package = "openxlsx"))
df3 <- read.xlsx(wb,
  sheet = 2, skipEmptyRows = FALSE,
  cols = c(1, 4), rows = c(1, 3, 4)
)
## URL
##
## Not run: 
xlsxFile <- "https://github.com/awalker89/openxlsx/raw/master/inst/readTest.xlsx"
head(read.xlsx(xlsxFile))
## End(Not run)
[Package openxlsx version 4.2.3 Index]

本日はここまでで。

Rの日付操作方法

 概要

Rのデータ分析でよく使う日付の操作コマンドをメモしようと思います。


コマンド

①文字列から日付型(yyyy-mm-dd)への変換

> # xlsxやcsvファイルを読み込むと数値表示になってしまう事がある
> X[, Date]
[1] 44003
> # この場合、as.Date関数を用いる事で修正が可能。
> # 「origin="1899-12-30"」は、xlsxやcsvの仕様に基づくおまじない
> # 「tz="Asia/Tokyo"」は、タイムゾーン。下記等を指定可能。
> # 日本:"Asia/Tokyo"、世界標準時:"GMT"
> X[, Date] <- as.date="" date="" origin="1899-12-30" span="" tz="Asia/Tokyo")
> X[, Date]
[1] 2020-06-21


②文字列から日時(yyyy-mm-dd hh:mm:ss)への変換

> # xlsxやcsvファイルを読み込むと数値表示になってしまう事がある
> X[, datetime]
[1] 43815.55
> # この場合、as.POSIXct関数を用いる事で修正が可能。
> # 「origin="1970-01-01"」は、日時操作時のおまじない > # 「tz="Asia/Tokyo"」は、タイムゾーン。①と同。 > X[, datetime] <- as.POSIXct((X[, datetime]-25569)*86400, tz="Asia/Tokyo", origin="1970-01-01")
> X[, datetime]
[1] 2020-05-14 07:05:00


③文字列から時間(hh:mm:ss)への変換

> # ②から「hh:mm:ss」になる部分だけを取り出せば良い
> X[, time]
[1] 43815.55
> # ②からformat関数で「hh:mm:ss」だけを取り出す
> X[, time] <- format(as.POSIXct((X[, time]-25569)*86400, tz="Asia/Tokyo", origin="1970-01-01"), "%H:%M:%S")
> X[, time]
[1] 07:05:00

①と②は紹介している書籍やブログが結構あるのですが③は意外と調べるのに苦労しました。
ということで、本日はここまでで。

2020年12月18日金曜日

FX自動トレード_2020年11月実績

 概要

2020年11月が終わり、FX自動トレードによる収益実績を取り纏めましたので振り返ってみたいと思います。


2020年11月結果

2020年11月の実績は、実利利益額:\54,278、実績利益率は3.06%でした。


なお今月頭に\100,000調達の目処が立ちましたので、入金額は\1,350,000→\1,450,000に増額しています。


進捗

続いて予実比較です。当初計画と比較すると、想定利益率は3.16%でしたので0.10%ショート、入金額の増額があった為利益額は\3,119ロングという結果になりました。また、本日までの実績平均利益率/月は2.95%になりました。


続いて、「10年1億円プロジェクト」の当初計画との予実比較は以下になります。\100,000入金しましたので2021年9月時点の預託証拠金にまで到達する事が出来ました。



また、入金額と利益率/月を調整した予定と、実績を比較した進捗は以下になります(12月分は執筆時点での途中経過が入っています)。

先月に引き続き対予定で負けている状況ですので、予断は許さない状況です。


RStudioをインストールする方法

 概要

仕事でデータ分析をする事があり、Rを利用する必要があったので、RStudioのインストール手順メモです。


事前準備

RStudioはその名のとおりRを動かすプラットフォームなのですが、Rが別途インストールされていないと動作しません。そのため、事前にRをインストールしてください。

Rのインストール手順はこちらに記載しています。


インストーラーの入手

RStudioはこちらから入手してください。専門的な事をするのでなければフリーの「RStudio Desktop」で十分だと思います。


インストール実施

インストーラーが入手出来たら、インストールは画面に沿ってすすめるだけで出来ます。

1. インストーラーを起動すると↓が表示されるので「次へ」を押下。

2. 「次へ」を押下。

3. 「インストール」を押下。

4. インストールが終わるのを見守る。

5. 「完了」を押下。

以上になります。

動作確認

RStudioを起動すると↓のような画面が表示されると思います。
画面が表示されたら「plot cars」と入力してみてください。Rと共に正しくインストールされていれば右下のウィンドウに散布図が表示されるはずです。


本日はここまでで。

Rをインストールする方法

概要

仕事でデータ分析をする事があり、Rをインストールをする必要があったのでその手順のメモです。

インストーラーの入手

Rの公式サイトはこちらになります。ただ、結局ダウンロードサイト(公式の外部)に飛ばされます。インストーラーはこちらにありますので後者リンクから入手してください(日本リージョン向け)。

インストール実施

インストーラーが入手出来たら、インストールは画面に沿ってすすめるだけで出来ます。

1. インストーラーを起動すると↓が表示されるので「OK」を押下。

2. 「次へ」を押下。

3. インストール先を指定して(想いが無ければイジらなくてOK)「次へ」を押下。

4. 必要なコンポーネントを選択して(こちらも想いが無ければイジらなくてOK)「次へ」を押下。

5. 「次へ」を押下。

6. 「次へ」を押下。

7. 「次へ」を押下。

8. インストールが終わるのを見守る。

9. 「完了」を押下する。

 

以上です。とても簡単でした。

今回はここまでで。

httpsでアクセス出来るようにnpmをビルドする方法

概要

何も考えず「npm run」をするとhttpのWebページが立ち上がりますが、httpsのWebページを立ち上げたくてその方法を調べたのでメモします。


事前準備

「vue.config.js」ファイルを作成

事前準備として、「npm run」する際にhttps Webサーバーを立てるための定義ファイルが必要なのでこれを作成します。

作成方法としては、Node.jsを使ったプロジェクトのルートディレクトリ(たぶん。package.jsonがある階層)に「vue.config.js」という名称のファイルを作成します。


「vue.config.js」ファイルの中身を記載

ファイルの中には以下のとおり記載してください。

module.exports = {
    devServer: {
      https: true
    }
  }


実行

上記にて必要な事前準備は完了なので、いよいよrunします。但し、ただrunしてもhttpサーバーが立ち上がってしまうので下記コマンドでrunする必要があります。

$ npm run serve -- --https --open --port 443

これでhttpsのWebページが立ち上がると思います。


今回はここまでで。

Pythonでvirtual envを構築する方法(Windows10)

概要 

Pythonにてvirtual envをしようと思ったときに少し迷ったのでその方法をメモします。


方法

早速ですが、結論としては下記コマンドで以上終了です。

$ python -m venv .venv


ググるとvirtual envに必要なモジュールのインストール方法が沢山出てくるのですが、Python3.3(※)以降はvirtual envはデフォルトでインストールされている為、何も考えずに普通に実行可能です。


(※)執筆時点(2020年12月)での最新版は「3.9.1 - 2020年12月7日リリース」。


一言で終わってしまった。本日はここまでで。

FX自動トレード_2021年6月実績

      概要 2021年6月が終わり、FX自動トレードによる収益実績を取り纏めましたので振り返ってみたいと思います。 2021年6月結果 2021年6月の実績は、実利利益額:\66,761、実績利益率は1.42%でした。 今月もボラが全く出ず。利益率の連続過去最低記録更新は免...