パンナの学生生活

地方大学の大学生/プログラミング言語【python】を中心に紹介しています。/日々の脳内をアウトプット/麻雀とワインと日本酒が好き/将来は幸せになりたい

Château Tour Prignac Médoc 2015

今年の3月くらいにワインを飲みたいと思って自分で買ったワインがもうすぐで無くなりそうなので、そのワインのレビューを書こうと思った次第でございます。(言葉も上品に)

 

初めて買ったワインがタイトルにも書いてある名前のワインです。

 

なぜこれを買ったかというと一目惚れです。何もない知識で選ぶのは難しかったので、パッケージと生産国を見て決めました。(感覚派)

f:id:panNakotta:20200516214721p:plain

Château Tour Prignac Médoc 2015

ワインの飲んだ感想は、少し土っぽいような味わいで渋めだなあって思いました。色々調べてみると、このワインの香りは松茸とコショウに分類されるらしいです。

 

う~んよくわからん!!でもチーズとかとこのワインの相性が良いと思いました。(素人感覚)

 

実は、今他のワインも飲んでいてストックがこのワイン含めて三本あるんですけど、飲み比べするのが楽しいです。ちょっとした趣味みたいになっています。ワイン1本1本全く違う味と香りで個性がでていて面白いです。

 

そんなこんなで、毎週少しづつ飲んでいました。そして、気づいたらもう少しで無くなってしまいそう。。

 

なんか、仲良くなったお友達がいきなり姿を消したみたいで少し悲しくなっている次第です。

 

何か美味しいワインがあったら教えてください。

情報のマリオネット

今日も最近思うことをつらつらと書きなぐっている。


こうやって自分の書きたいことを書いてるとあまり読者数も増えないんですが、自分の脳内が整理されているように感じる!


最近はコロナウィルスとかでデマが流れたり、不安を煽る記事が横行しています。今の時代情報によって我々の行動や精神を変えられているとふと思う。


そういう現状を見ていると今の私たちは情報に踊らされているって感じる。


トイレットペーパーの買い占めもしかり完全にマリオネットとなっている。


このご時世それはしょうがないことでもあるだって、情報に触れないことのない世界だから、、


そう考えると自分の意思ってものはない気がしますね。


youtubeを見ているときに私は見ようとも思ってなかった動画をよく再生しているが、それは再生させられているんだよなぁって感じてる。これは多分行動心理学的な分野になると思うが、、


完璧に動かされている。


そう考えながら、この前ある教授が言ってたことを思い出す。

【お金は人を動かすところに集まる】


色々脱線しましたが、最近のSNSを見ていると情報によって踊らされている私を含めた人々を見て、【情報のマリオネット】という言葉が脳に浮かんだ、、、


俺も将来は誰かを動かす人間になりたい。


パンナのマリオネットを作っていきたい。

井の中の蛙の傲慢さ

 ツイッターとかで色々なツイートを見かけると本当に色々な考えの人を見つける。ツイッターでは意見を書いたり日常を投稿するところだから、何も悪いこともないし、様々な意見がある方が良いとは思う。

ただ、気になるのは本当に偏ってる意見や、論理破綻してる意見なのにそれに同調して、何も疑問に思わない人が意外と多くいることにヤバさを感じた。今日この頃

(久々にこんな記事書いた、、)

ある特定のインフルエンサーがツイートしたらそれを脳死でアホみたいに信じて、支持している。こういうリプ欄を見ると本当に虫唾が走る。

そして、てめぇらには脳みそが無いのか思う。別に信頼する人や、信用する人はいて良いと思う。私にだってそういう人はある程度いる。けど思考は放棄するなって声を出して言いたい(黙々と執筆中、、、

インフルエンサーは、そこで承認欲求が満たされてフォロワーの中には仲間意識が芽生える。まさしく小宗教みたいな感じになっている。

この小宗教は小さなコミュニティで、自分たちは正しいと勘違いしている事もある。まさに井の中の蛙であると感じる。

こんな感じで最近思ったことを適当につらつらと綴って暇を潰していました。割とストレス発散できました。


結局モノはいいようじゃね、、

こんにちは、久しぶりに自分の言いたいことをブログに書いています。

最近色々将来について考えて悩んでいました。けど最近気づいたことがあって、タイトルにもあるように「結局モノはいいようだな」って結論に至りました。

 

こんなこと書いているけど久々に自分の考えとか書いていると普通に恥ずかしいのですが、、、、(そんなことはどうでもいい)

 

物事には両面性があると私は思ってて、何でも物事をプラスの方向に考えて発言をしていこと思っています。(自分の文章力に絶望

 

樹木希林さんも「どんな物事にも表と裏、善と悪があり、両面を受け入れることで人はたくましくなる。健康を善、病を悪とする人生はつまらない」とおっしゃっていました。

 

本当に良い言葉だなあって感嘆しました。

 

樹木希林さんは両面を受け入れることと仰っていましたが、本当に辛かったら良い面だけを信じて行動していけばよいと思ったら、悩みも少なくなっていきました。

 

ここで395文字久しぶりのブログは全然書けませんね、、文章力を鍛えないと、、

 

このブログを読んでくださりありがとうございます。

【python】コロナウイルその日の感染者人数を予測する。

日に日に猛威を振るっているコロナウイル。その感染者の人数をもとにどのような推移で感染者が増しているのかをpythonで調べてみようかと思いました。

コロナウイル感染者のオープンデータ

コードの説明

コロナウイルについて

コロナウイル感染者のオープンデータ

コロナウイルのオープンデータは厚生労働省の報道発表資料のやつを使っています。

そのCSVファイルはこちらから見ることが出来ます。

GitHub - kaz-ogiwara/covid19: 新型コロナウイルス(COVID19)の国内における感染の状況を厚生労働省の報道発表資料からビジュアルにまとめた。

今回はこのデータの日にちとその日の感染者数のデータを使用します。最初の感染者が出た日から日数によって予測していきます。

 

ちなみにこのデータでは確定日が調査中のデータは省きました。2020年3月5日23時時点では、3月3日の感染者までしか更新されていませんのでそのデータを使って予測していきます。

 

予測方法はAICを使ってn次関数で予測していきます。

過去にこのソースコードを貼っておきます。

 

pannakotta.hatenablog.jp

 この時の方法で関数を求めていきます。

出力結果の説明

import AIC
import LSM

x1 = np.array(x)
y1=np.array(y)

plt.plot(x,y,'o')
num=5

data = np.array([x1,y1]).T

data_x=[]
data_y=[]
for i in data :
    data_x.append(i[0])
    data_y.append(i[1])

# データをプロット

for k in range(0,num):
    N = k
AIC_com=[]

for n in range(N+1):
    # 実行する次数
    print("N="+str(n))

    # LSMで誤差と重みベクトルcoeを計算
    error, coe = LSM.LSM(data, int(n+1))
    print("error:"+str(error))
    print("coe:"+str(coe[::-1]))

    # ここで,このモデルのAICを計算
    l = AIC.l_MAX(list(coe[::-1]),data_x,data_y)
    AIC_n = AIC.AIC(l,n+1)
    print("l="+str(l)+", AIC("+str(n)+")="+str(AIC_n))
    AIC_com.append(AIC_n)



Minimum = np.min(AIC_com)
for m in range(0,num):
    if AIC_com[m] == Minimum:
        print('AIC最小の次数は:{}次'.format(m))
        s = m
        print("N="+str(s))

    # LSMで誤差と重みベクトルcoeを計算
error, coe = LSM.LSM(data, int(s+1))
print("error:"+str(error))
print("coe:"+str(coe[::-1]))

    # ここで,このモデルのAICを計算
l = AIC.l_MAX(list(coe[::-1]),data_x,data_y)
AIC_s = AIC.AIC(l,s+1)
print("l="+str(l)+", AIC("+str(s)+")="+str(AIC_s))
AIC_com.append(AIC_s)
print(np.poly1d(coe))
    # LSMで得た近似線をプロット
test_3 = np.arange(min(data_x), max(data_x), 0.01)
plt.plot(test_3, LSM.quation_LSM(coe, test_3),color='black')

plt.title("AIC")
plt.xlabel('x value')
plt.xlim(0,30)
plt.ylim(0,30)
plt.show()

#出力
N=0
error:26.001860975583043
coe:[7.83870968]
l=-102.50728561326845, AIC(0)=209.0145712265369
N=1
error:16.619676887376517
coe:[-3.76789208  0.38813879]
l=-88.63228194791694, AIC(1)=183.26456389583387
N=2
error:15.92196810296838
coe:[ 0.39436123 -0.0319299   0.00788319]
l=-87.30276787584789, AIC(2)=182.60553575169578
N=3
error:15.923022013429266
coe:[ 3.88904456e-01 -3.08874768e-02  7.83557747e-03  6.10255673e-07]
l=-87.30481976684739, AIC(3)=184.60963953369478
N=4
error:16.69140259160465
coe:[-3.95739942e+00  4.02112647e-01 -3.82898220e-05 -1.85238141e-06
 -6.78651480e-08]
l=-88.76578109007211, AIC(4)=189.53156218014422
AIC最小の次数は:2次
N=2
error:15.92196810296838
coe:[ 0.39436123 -0.0319299   0.00788319]
l=-87.30276787584789, AIC(2)=182.60553575169578
          2
0.007883 x - 0.03193 x + 0.3944

 このように2次式関数が一番近い関数ということが分かりました。また、次数も低いので、過学習までには至ってないように思います。

f:id:panNakotta:20200305231348p:plain

これを30日後以降も表示していきます。

def f(x):
    y= 0.007883*x**2-0.03193*x+0.3944
    return y
#xの範囲を0~100とする。
x=np.linspace(0,100)
plt.plot(x,f(x))
plt.label("COVID-19")
plt.xlabel("days")
plt.ylabel("the number of patients") plt.grid(True) plt.show() #1月15日からの51日後、3月6日の感染者数を表示(予測) print(int(f(51))) #出力 18
#3月6日は18人の感染者が出る?

 

f:id:panNakotta:20200305232956p:plain

このような出力結果になりました。

今回の関数による予測は不安を煽るために行ったわけではありません。また、分析方法が間違ていたり、統計的に問題点があった場合は、ご指摘または、ご教授の方をよろしくお願いいたします。

コロナウイルについて

今回の予測結果のような2次関数のように増加していくと大変なことになってしまいます。そのための休校の処置であったりすると思います。今回の予測はただの数値による予測でしかありません。なので、そこまで深刻に感じないようよろしくお願いいたします。

また、AICに関しましては、こちらを参考に

http://takashiyoshino.random-walk.org/memo/keikaku2/node5.html#SECTION00054100000000000000

GitHub - ustato/CalcAIC: モデル評価指標であるAIC(Akaike's Information Criterion)の計算をPythonで実装した.



 

【データサイエンス】【python】【k-means】過去の気温データからクラスタリングを行う

 k-means法について

今回扱うデータ

ソースコード

クラスタリングの出力

k-means法について

クラスタリングは与えられたデータを類似性のグラフに分けることです。クラスタとは集団という意味があります。

クラスタリング

  1. 入力データをプロットする。
  2. ランダムに指定したクラスタ数の点をプロットする。
  3. 各ランダムの点をクラスターの重心点としてラベリングする。
  4. 入力データの各点について、指定したクラスタ数の重心点の中で、最も近いものを選びその番号をそのデータのクラスタ番号とする。
  5. 全ての入力データについて、クラスタが決まった後、それぞれのクラスタの重心を計算する。
  6. 5で求めた3つの重心を新しいクラスタの重心点とする。
  7. 4~6までの流れを繰り返す。

これらの流れを機械学習ライブラリーのsklearnで行っていきたいと思います。

今回扱うデータについて

今回も気温データを扱っていきたいと思います。

今回の扱うデータを前の記事のデータを少し加工して使います。前回の気温データの取得方法で過去十年分の月ごとの気温データを取得しましょう。

 

pannakotta.hatenablog.jp

 この記事を参考にしてみてください。

f:id:panNakotta:20200304184343p:plain

各月の気温平均データ 十年分

このような感じにcsvファイルで作成します。各行が月の平均気温になっています。各列が各年度の気温データになっています。この表は

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import scipy as sp
from matplotlib import pyplot 
from pandas import Series,DataFrame
from sklearn.model_selection import train_test_split
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
import seaborn as sns
import sklearn
data1=DataFrame(pd.read_csv("m_ave.csv"))
#気温データのcsvファイルを読み込み
data1

jupyter notebookで上記のようにすると表示できます。

ソースコード

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import scipy as sp
from matplotlib import pyplot 
from pandas import Series,DataFrame
from sklearn.model_selection import train_test_split
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
import seaborn as sns
import sklearn
data1=DataFrame(pd.read_csv("m_ave.csv"))
data1
#data1の転置行列
t_data=data1.T
t_data
#kmeans.fitでクラスタ分けをする。
kmeans=KMeans(init='k-means++',n_clusters=4,n_init=10,max_iter=400)
kmeans.fit(data3)
y_pred=kmeans.predict(data3)
print(y_pred)
merge_data=pd.concat([data1,pd.DataFrame(y_pred)],axis=1)
#クラスタ分けをした結果をデータフレームに挿入する。
merge_data.columns=["feature1","feature2","2009","2010","2011","2012","2013","2014","2015","2016","2017","cluster"]
merge_data

ax=None
colors=['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf',"yellow","blue","black","green"]
for i,data in merge_data.groupby("cluster"):
    ax=data.plot.scatter(x="feature1",y="feature2",color=colors[i],label=f'cluster{i}',ax=ax)
plt.savefig("class.png")
#出力結果を画像に表示する。

f:id:panNakotta:20200304230951p:plain

class

f:id:panNakotta:20200304231228p:plain

今回のクラスタ分けで月の平均気温の類似性を分類できた。もっとデータ数が多いときれいな分類が出来ると思うので、やってみても良いと思います。

【データサイエンス】【python】重回帰分析で気温を予測し、予測値の分析をする。

今回は実際に重回帰分析で気温を予測し、その正解率を出してと思います。使うのは、scikit-learnです。機械学習ライブラリーの前回の講義で10年分の気温データを取得し、データの整理とそれらのデータの相関関係を調べました。前回の記事はこちらから見てください。

 

pannakotta.hatenablog.jp

 

 重回帰分析について

ソースコード

予測精度について

最後に

重回帰分析について

重回帰分析とは、簡単に説明すると、1つの目的変数を複数の説明変数で予測したものです。xを目的変数とし、yを目的変数とします。その、説明変数の係数とその関数の切片を求める方法です。


y=a_{1}x_{1}+a_{2}x_{2}+a_{3}x_{3}+........+b

ちなみに単回帰分析は一つの目的変数を一つの説明変数で予測するというものです。xを目的変数とし、yを目的変数とします。その、説明変数の係数とその関数の切片を求める方法です。


y=ax+b

今回の天気の予測は、2007年~2017年の10年間の7気温データを説明変数として、目的変数を2018年の気温データとして予測していきます。

ソースコード

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import scipy as sp
from matplotlib import pyplot 
from pandas import Series,DataFrame
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn import linear_model
import seaborn as sns
import sklearn
data1=DataFrame(pd.read_csv("assign5_temp1.csv"))

data2=data1[["2018","2007","2008","2009","2010","2011","2012","2013","2014","2015","2016","2017"]]
print("データ型確認{}\n".format(data2.dtypes))

X=data2.drop('2018',axis=1)
y=data2["2018"]
X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.5,random_state=0)
#Xを説明変数、yを目的変数とする。Xとyを訓練データとテストデータに分ける。
model=LinearRegression()
model.fit(X_train,y_train)
print("決定係数(train):{:.3f}".format(model.score(X_train,y_train)))
print("決定係数(test):{:.3f}".format(model.score(X_test,y_test)))
#決定係数の表示、回帰方程式の当てはまりの良さの尺度
print("\n回帰係数\n{}".format(pd.Series(model.coef_,index=X.columns)))
print("切片:{:.3f}".format(model.intercept_))
#回帰係数と切片の表示
K=model.predict(X)
print(K)
#説明変数からの2018年の気温の予測値を表示

 下の数値が予測データとなります。データ数は365日

[ 3.870521    4.22613244  4.35346116  4.06021005  3.54201976  4.47881628
  3.66137512  4.13818639  3.51178742  2.61530929  2.19479034  1.78812311
  1.54611373  1.46574991  1.04176796  1.47762866  1.3731758   1.89278373
  2.47943568  2.72209344  2.6001476   3.16071232  2.80813023  1.25805903
  2.16877967  2.02601257  1.9356686   2.0500648   1.97369468  2.92190638
  2.498863    1.84997711  3.08112886  3.28403439  1.71911256  1.11563541
  1.871768    1.93700705  0.8633924   1.02089027  1.72662474  1.91477831
  2.39922582  2.1325071   2.92190327  2.7530011   2.42515867  1.77634443
  1.21386026  1.66255399  2.79582828  2.6930197   3.81354741  4.50963944
  3.26109773  3.22168638  3.94774347  3.83088187  3.94510377  4.54333797
  4.72229101  4.12474651  4.31544902  4.85579566  5.26039673  4.9947067
  5.2512229   5.42043217  3.66103462  4.45413154  5.29893675  6.27424833
  5.96018587  5.76314222  7.1863267   8.36159553  8.94025455  8.40793384
  7.38492936  6.64279043  7.76116517  7.48998588  7.61589386  7.71180902
  7.00756232  7.61319097  8.20485326  9.38662999  9.87431238  8.54098212
  8.30914494  9.6697589  11.70744734  9.59904153  8.85690209  8.75557809
  9.50975945 10.15894612 11.38746301 11.3682864  10.23016891 10.24901297
 10.8614511  11.22530732 11.07577522 13.44511429 12.74029407 12.49467956
 11.72188992 12.55649563 13.02492653 12.37874937 13.48514621 13.35386043
 13.32826211 14.89754534 14.44057477 14.51667266 15.80923573 17.64188945
 18.16452407 18.53557164 18.74376054 17.46225783 16.6107457  16.08640791
 16.57846208 16.68359233 14.84432357 14.59443221 14.33152959 15.46770332
 16.25185415 17.22134791 17.66469429 16.30130769 15.34065055 16.54316968
 18.69963808 18.58436748 18.25104998 18.54515098 18.32100793 19.55064458
 19.34585459 19.18351235 19.12617073 20.42237804 20.32096797 20.94886424
 19.13366174 19.19287226 19.48838728 20.74004694 21.00419525 20.56021438
 20.17934007 20.96734007 21.57787831 20.96825127 21.45536925 21.94972279
 21.40076639 20.66332738 20.30262378 21.06113703 21.12701812 21.34641078
 21.67017792 22.08911115 22.80526285 22.24628785 22.23191589 21.28649245
 20.99258011 21.81190585 22.8828339  23.434881   22.95641131 22.542582
 23.47805549 22.91930245 23.63546497 24.1124517  24.02053104 24.61414282
 24.83009477 23.67043604 24.10421754 24.30900677 24.85133378 25.6157912
 25.64921939 25.54707555 25.34937694 25.92154823 25.76103289 27.23346884
 25.74133663 25.43458177 26.00344003 26.90376569 27.73194479 26.98623374
 26.72536459 26.59613871 28.06689558 27.5660826  27.00335165 27.01311403
 28.25719928 28.87392616 28.34154795 28.54837951 28.86734893 29.03715563
 29.15815028 28.75507011 28.16099668 26.50746713 26.31943175 26.97988972
 26.69772157 26.94982142 27.19827503 26.46027933 26.99665741 26.64745869
 26.02893416 27.06244669 27.72805566 27.96645087 26.88504927 27.36128994
 26.32982929 26.13958056 25.94597272 25.84443909 25.55521898 26.65066553
 26.46193711 25.21721168 25.79836548 26.21645716 26.87531921 26.19949252
 25.75046744 25.7509156  24.72432827 24.21207553 24.82357164 24.69631137
 24.61361872 23.78658809 23.45477444 22.94183024 23.33049371 23.12148702
 23.31257301 23.28619191 24.27264397 22.65154008 22.01631208 20.89010518
 21.444387   20.77600222 21.15497761 20.61701116 20.88596638 20.76486586
 20.76661273 20.02152343 20.28085756 20.41619976 20.22168447 20.64194969
 19.85549244 18.66114592 18.90362378 18.81829547 18.52571921 19.26709665
 19.23607608 18.13016557 17.08553288 16.46488356 16.8472194  16.57446924
 16.47721209 17.46074519 17.11129876 16.79455691 16.94235803 17.14357423
 16.08503359 15.85240287 15.89765281 15.23025487 16.05587917 14.83088058
 13.785434   13.87863317 12.78124264 12.91376694 13.21889755 13.39197883
 13.15138844 12.38015808 13.13225259 14.27337478 12.82059725 12.71186834
 12.86896803 12.105209   11.39581379 12.67138024 11.77174978 10.88960906
 11.18898789 10.78845315 10.46463111  9.86617549  8.2684794   8.07272183
  8.89597712  9.90987114  9.75168862  8.44894961  7.95273035  8.58378489
  8.89041726  9.23526204  9.82694093  9.3668313   8.69074663  6.94052954
  8.13976205  8.55676016  7.42552343  4.96790195  3.93652799  4.5599358
  5.50006154  6.44243289  7.28968862  6.17249384  5.11088842  4.39346719
  4.81402086  5.87505403  4.55305247  4.65151547  4.51706745  4.98637429
  5.45093034  5.12228532  4.584958    4.7103008   4.11641598  2.06103886
  2.31737143  3.30782188  4.49520462  4.93592718  3.56841603]

 予測精度について

予測した決定係数と回帰係数と切片は以下の通りになります。

決定係数(train):0.922
決定係数(test):0.916

回帰係数
2007   -0.126166
2008    0.288299
2009    0.128451
2010   -0.020193
2011    0.037523
2012    0.195344
2013    0.020601
2014    0.285419
2015    0.076821
2016    0.048763
2017    0.093599
dtype: float64
切片:0.105

予測したpredict 2018と正解データ2018年の気温データの相関係数とp値は以下のようになります。

s=sp.stats.pearsonr(K,data2["2018"])
print("(相関係数,P値):{}".format(s))
#出力
(相関係数,P値):(0.9597455070958658, 2.802060654306793e-202)
plt.plot(K,data4["2018"],'o')
plt.xlabel("predict 2018(℃)")
plt.ylabel("2018(℃)")
plt.savefig("cor_temper",dpi=300)

 

f:id:panNakotta:20200224182726p:plain

predict 2018と正解データの相関

最後に

今回は2018年の気温を重回帰分析で行っていきました。scikit-learnは便利ですね。今回まだ詳しいデータの表示の仕方や、グラフのプロットなど詳しく説明していないので、また機会があれば説明していきたいと思います。

ツイッターで随時質問など受け付けています。何かあればいつでも質問してください。

今後も発信していきたいと考えています。最後までご覧いただきありがとうございます。

【データサイエンス】【python】重回帰分析で気温を予測する。

今回はpython言語で回帰分析をすることで明日の気温を予測していきたいと思います。今回は最初に、データの取得とデータの可視化、分析をしていきたいと思います。今回は三つの記事を使って予測していきたいと思います。

 

pannakotta.hatenablog.jp

 実際に予測したデータはこちらの記事になります。

 データの取得方法

データの可視化

ソースコード

次の回の説明

データの取得方法について

最初に気象庁サイトへアクセスをしましょう。

気象庁|過去の気象データ・ダウンロード

ここから日平均気温を取得します。最初に予測した地域を選択してみましょう。その後、取得する気温の期間がありますが、まずは10年分くらい取得してみるといいと思います。日平均期間と取得時期を入力して、csvファイルをダウンロードをしましょう。

csvファイルをダウンロードしたら一度開いて確認してみましょう。

f:id:panNakotta:20200222001853p:plain

気温

このように気温のダウンロードが成功したと思います。しかし、このままだと分析しにくいので、データの整理していきたいと思います。まずは、気温の品質番号と均質番号は消しましょう。

f:id:panNakotta:20200222002521p:plain

気温1

最終的にここまで整理すると後に楽になります。

データの可視化

今回の記事では、相関係数を求めるソースコードと折れ線グラフのソースコードをのせていきたいと思います。相関係数は以下のようになります。

f:id:panNakotta:20200222003135p:plain

相関係数

f:id:panNakotta:20200222003430p:plain

相関図

上は先ほどの年度ごとの散布図になります。このように見てみると正の相関があることが分かります。先ほどの相関係数の数値を見てもらうと分かるように大体が0.9以上なので強い相関があることが分かります。ちなみに相関係数の絶対値が0.5以上の場合に強い相関があると言われています。

f:id:panNakotta:20200222004305p:plain

気温の棒グラフ

今回は2018年の気温を予測していきたいと考えています。黒い棒線が2018年のグラフです。全体的に同じような気温の変化をしていることが分かります。

ソースコード

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import scipy as sp
from matplotlib import pyplot 
from pandas import Series,DataFrame
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn import linear_model
import seaborn as sns
import sklearn

data1=DataFrame(pd.read_csv("assign5_temp1.csv")) #気温データを読み込む

data2=data1[["2018","2007","2008","2009","2010","2011","2012","2013","2014","2015","2016","2017"]]
print("データ型確認{}\n".format(data2.dtypes))
data2.corr() #相関係数を調べる

sns.pairplot(data2) #相関行列を作成
plt.grid(True)

l=pd.date_range("1-1-1",periods=365,freq="d")
plt.plot(l,X,alpha=0.7)
plt.plot(l,data2["2018"],color="black") #棒グラフを作成
plt.legend(X)

 私は今回はjupyter notebookを使用しているのでjupyter notebookでやってみることがお勧めです。また今回使っているライブラリーはデータ分析でよく使うライブラリなので必要になったらインストールすると良いです。windowsの場合はコマンドプロンプトでpip installを使用すればライブラリーのインストールが出来ます。

次の回の説明

次回は重回帰分析の説明と予測をしていきたいと思います。

また、今回の記事では少しおざっぱに説明してしまったので、分からない部分はツイッターなどで質問を受け付けています。気軽にお声かけください。また、時間を見つけて詳しく説明していきたいと思います。

 

 

pannakotta.hatenablog.jp

 

【外務省】SDGsの取り組み事例 おっぱい展とは

皆さんSDGsってご存じでしょうか?

僕もSDGsという言葉は大学で知り、そこにビジネスでも役に立つかと思い調べていました。調べていたらそこに興味深いものが、、

いやらしいとかそういうものはありません、、なので真面目に

 SDGsとは

SDGs知名度

おっぱい展とは

 

SDGs

SDGs(Sustainable Development Goals)とは持続可能な開発目標です。2015年に国連で採択された2016年から2030年までの国際目標です。様々な目標があり、それぞれ発展途上国や先進国など関係なしに取り組んでいこうとされた目標です。

SDGsとは? | JAPAN SDGs Action Platform | 外務省

みなさんは聞いたことありますか??

SDGsには17の目標があり、その中でも169のターゲットがあります。多くの課題がある世の中をビジネスを使って解決していこうということです。

 

今回はそのSDGsを広める役目を担っていこうかなと思います。(勝手に)

 

ぜひ外務省の皆さん私にお金をください!!!

それかおっぱい展実行委員会の皆さん!!!

 

そんな冗談はさて置かないで

 

SDGsはピコ太郎やハローキティちゃんも紹介しているので、私も有名人の仲間入りです。

 

外務省が運営しているSDGsのホームページには、様々な取り組みが紹介されています。

大手企業や中小企業の取り組みが紹介されていてとても面白かったです。

 

その中でも人目を引いたのは【おっぱい展】という文字です。

google検索で「SDGs awareness」と調べると日本の値も出てきています。

こんなことを言われています。

Great Britain and Japan ranked as the two countries that are least familiar, with 51% of respondents having never heard of them.

ちなみに意味は分かりますか??

「今まで聞いたことの無いと答えた人の割合が51%で最もSDGsに親しみの無い二つの国にランクしていた」と言われています。

世界的に見ても低いんです。 これは私が日本の皆さんに広げなきゃ(謎の使命感)

日本の中でもやはり聞いたことの無い人だらけ‼

でもこれからはみんなも知っていくはずです。だってこんなに盛り上がっているし、私が紹介しているのだから!!

www.weforum.org

 

 

SDGs知名度

ここのブログでSDGsを始めて知った人はいますか??

SDGs知名度は世界的に見ても低いです。

おっぱい展とは

「おっぱい展」とは現代社会の女性にまつわるエトセトラを、アートを通して世の中に伝えて いきたいとの女性アーティストの想いから「女性のため」「子どもたちのため」「社会のため」 「乳がんの早期発見のため」など、自分だけではない周りの人たちや、他の国の人々のことを もっと考える「きっかけ」になるためのイベントとして 2017年より開催しています。

oppai-art.localinfo.jp

しっかりとした課題解決がされています。

このサイトには三つのテーマが載っていました。

おっぱい展の3つのテーマ

OPPAI 1

母が子へ与える母乳「おっぱい」:生命、生きること

OPPAI 2

エロスや心としての「おっぱい」:女の象徴、ありのままの自分

OPPAI 3

女性の病気への不安「おっぱい」:乳がんの啓蒙

があります。

 

これはSDGsの目標10「人や国の不平等をなくそう」

目標5「ジェンダー平等の実現しよう」

目標3「すべての人に健康と福祉を」

目標16「平和と公正をすべてのひとに」

これらの目標の貢献をしています。

 

このような課題の解決をしているおっぱい展の実行委員は素晴らしいですね。

 

 様々な取り組みが外務省のHPに載っているので是非見てみてください

 

SDGsを周りにも広めていきましょう。

 

最後に本の紹介をしときますね

 

2030年の世界地図帳  あたらしい経済とSDGs、未来への展望

2030年の世界地図帳 あたらしい経済とSDGs、未来への展望

 

 ちなみに読んだことはありません。でも読んでみたいので誰買ってください。

【雑記】英語の勉強としてTED Brain magic を見て驚愕 した。

TEDをしていますか??TEDは様々な人が英語でスピーチをして無料公開しているWEBサービスです。私も良く英語の勉強で見ています。今日はその中で、一番驚愕して面白かったスピーチについて紹介します。

  1. TEDとは
  2. Brain magic

 TEDとは

TEDとは様々な人が英語でスピーチをしていて無料公開されているWEBサービスです。また、英語が分からない人のために翻訳がされています。なので英語分からない内容も戻って日本語訳で見ることが出来ます。

スピーチのジャンルはとても多くて、「医学」「教育」「エンジニア」「工学」「環境」「心理」などがあります。英語以外の勉強や知識を入れるにも役に立ちます。とてもTEDはおすすめです。

www.ted.com

TED talks Brain magic

www.ted.com

時間がある人がいたらぜひ見てみてください。

このBrain magicを見てほんとに驚愕しました。マジで驚きすぎて脳が追い付かなかったという感覚に至りました。また、見ても分かるんですけど最初の導入で会場のみんなと手を出してマジックのようなことをするのですが、この導入でみんなの注目を引き付けるというスピーチの技術も凄いなと感じました。今度実践してみよ、、、、

 

多分最初の導入を画面越しでやった私は引っ掛かりました。多分講演者は、画面の切り替えで手を握り変えていますね。会話しながらばれないように、、こんな感じで見破った‼‼ってドヤっていたら後半になるにつれ口でも説明できないことが多くて、ずっと口を開けっ放しで見てみました。

 

一番興味がわいたのがこのスピーチの中で会場の中から男女二人を選んで共感覚?動画の中ではヴードゥーexperienceとして言っていますね。被験者は触られていないのに触られた感覚に至る実験でした。これはMagicなのか、それとも人間の性質なのかはっきり分かりませんでした。でも、とても面白かった。Voodooの魔術と呼ばれているやつがあるらしいです。

 

少し調べてみました。

Voodoo Deathというのがあって、思い込みで人が死んでしまった。ことがあったみたいです。めちゃめちゃ大雑把に書きました。今もあるかわからないけどVoodoo教からきているらしいです。

 

少し脱線してしまったのですがその後もとても面白い内容が続いていたので見てみてください。英語の勉強にもなります。

またこれが心理的なものなのか、しっかりとした種があるのか知っている人がいたら教えてください

f:id:panNakotta:20191127120228p:plain

ted