プログラミング初心者

プログラミング初心者

プログラミング初心者のメモ

Amebaでブログを始めよう!
import jsm
import datetime
import numpy
import matplotlib.pyplot as plt
start=datetime.date(2015,1,1)
end=datetime.date(2016,4,21)
nis=q.get_historical_prices(7211,jsm.DAILY,start,end)
maz=q.get_historical_prices(7203,jsm.DAILY,start,end)
a=[]
b=[]
for i in range(318):
a.append(nis[i]._adj_close)
b.append(maz[i]._adj_close)

np.corrcoef(a,b)[0,1]
plt.plot(a,b,"o")
plt.show()

0.7395025
以前一度使ったことが有ったがほとんど知らないに等しかったので調べてみた
ランダムウォークを散布図で表してみた
matplotlibの使い方の基本として初めて知ったのは
x=リスト
y=リスト

plt.plot(x,y,"なんかのオプション")
plt.show()
で使うということ

import numpy as np
import matplotlib.pyplot as plt
import random
x=[]
y=[]
z=[-1,1]
s=0
for i in range(0,1111):
x.append(i)
s=s+random.choice(z)
y.append(s)


plt.plot(x,y,"o")
plt.show()
何故かうまく行かなったので理由がわかるまで苦労した
初め
def x(a,b):
while a%b!=0:
print(b)
a=b
b=a%b
とやっていたが while の中でaにbを代入するとb=a%b=0となってうまく行かなくなることに気づかなかったので
def x(a,b):
while a%b!=0:
s=a%b
a=b
b=s
print(b)
としたらうまくいった
def x(a,b):
while b!=0:
print(b)
a,b=b,a%b
でもうまくいった
a,b=b,a%bは両者同時に代入できるのに対し
a=b
b=a%b
とすると順番がついてしまう 初心者には意外と気づきにくい
よくわからないが作ってみた
tyouhoukei.py

class tyouhoukei:
def __init__(self,tate,yoko):
tyouhoukei.tate=tate
tyouhoukei.yoko=yoko
def menseki(self):
print(menseki.tate*menseki.yoko)
def shuuinonagasa(self):
print(2*(tyouhoukei.tate+tyouhoukei.yoko))

からの
import tyouhoukei

a=tyouhoukei.tyouhoukei(1,4)
a.menseki()
a.shuuinonagasa()
とかで使う
自作のモジュールを使うときは

モジュールの名前.対象のクラス

というふうにやらないとエラーが出る