プログラミングでアイデアを具現化したい

あらゆるものを具現化するためにプログラミングを始めました。主にC#

C# JSONデータからクラスを生成する

qiita.com

この記事で知ったんだけど、感動した機能。

例えばapi仕様ドキュメントなんかでこのようなJSON形式があった場合、
C#で処理しようとしたら普通は戻り値に対応したclassを作る必要がある。

{
    "success": 1,
    "return": {
        "received": 0.1,
        "remains": 0,
        "order_id": 0,
        "funds": {
            "jpy": 325,
            "btc": 1.392,
            "mona": 2600
        }
    }
}

それが、上記JSON形式のデータをコピペして、
編集 -> 形式を選択して貼り付け -> JSONをクラスとして貼り付けると・・
f:id:tos5511:20171216005914p:plain

public class Rootobject {
    public int success { get; set; }
    public Return _return { get; set; }
}

public class Return {
    public float received { get; set; }
    public int remains { get; set; }
    public int order_id { get; set; }
    public Funds funds { get; set; }
}

public class Funds {
    public int jpy { get; set; }
    public float btc { get; set; }
    public int mona { get; set; }
}

こんな感じのclassが自動生成された!
便利だわ~!もっと早く知りたかった!

C#実践開発手法


C実践開発手法 デザインパターンとSOLID原則によるアジャイルなコーディング

気になっていた本だったけど、amazon
日経BP社キャンペーンで50%OFFだったので購入してみた。
書評については機会があればそのうちに。

Rはじめてみた

tos5511.hatenablog.com
先日のUdemyセールで「Rではじめる統計基礎講座」なる講義も購入していたので
日曜のお昼を使ってRデビューしてみた。

練習問題として、こんな感じのcsvデータから各選手の項目ごとの偏差値を出してみる。
f:id:tos5511:20171210160323p:plain

data <- read.csv("data01-win.csv")

hist(data$打率)
hist(data$打率 ,breaks = seq(0.2,0.34,0.01))

f:id:tos5511:20171210161307p:plain

//標準化
scale(data$打率)

//偏差値
scale(data$打率)*10+50

X <- matrix(0,51,5)
X
X[,1] <- scale(data$打率)*10+50
X[,2] <- scale(data$本塁打)*10+50
X[,3] <- scale(data$打点)*10+50
X[,4] <- scale(data$盗塁)*10+50
X[,5] <- scale(data$出塁率)*10+50

出力
f:id:tos5511:20171210160602p:plain

なるほど、ずいぶんと簡単に分析ができるもんだ。
手使っていかないと中々頭に浸透しないので積極的に使っていってみよう!


・・ちなみに、まだkotlinには触れていない(笑)
というか、仮想通貨界隈が盛り上がりすぎていて
乗れていない自分は勝手に喪失感味わってる次第です・・