Python3

subplot で、ax の xtick を傾ける

fig,ax_ = plt.subplots(nrows=10, ncols=2, figsize=(14, 20)) ax_ = ax_.ravel() for i in range(20): list_ = M_feature_inverse[i][:3] ax = ax_[i] for l in list_: all_df_tmp = all_df_.loc[all_df_['pk']==l, :].groupby('request_at_dt').size().re…

House Priceの分析5

大まかな流れを把握 --> 提出まで 読み込み #import some necessary librairies import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv) %matplotlib inline import matplotlib.pyplot as plt # Matl…

wc -l のアクセス集計

wc -l のアクセス集計 を pythonで集計した。 wc -l accesslog.* a = ''' 10914 accesslog.20180828010002 8636 accesslog.20180829010001 4742 accesslog.20180830010002 6399 accesslog.20180831010001 6901 accesslog.20180901010001 5503 accesslog.2018…

House Priceの分析5

前処理 import pandas as pd import numpy as np import seaborn as sns import matplotlib import matplotlib.pyplot as plt from scipy.stats import skew from scipy.stats.stats import pearsonr %config InlineBackend.figure_format = 'retina' #set '…

MySQL から pandas.Dataframe へ読み込む

pandasから、mysqlに読み込む方法 import pandas as pd import MySQLdb def pd_dbread(table, columns_list): """ 接続サンプル """ # 接続する con = MySQLdb.connect( user='aaa', passwd='aaa', host='127.0.0.1', db='aaa', charset='utf8' ) # カーソル…

ramdom でshuffleすると、return Noneになる問題

こうすればいいらしい。 >>> import random >>> x = ['foo', 'bar', 'black', 'sheep'] # O(N) operations・・・shuffle と同じロジック >>> random.sample(x, len(x)) ['bar', 'sheep', 'black', 'foo'] # O(NlogN) operation >>> sorted(x, key=lambda k: …

House Priceの分析4

XGBRegressorっていう、回帰モデルがあるので確認。 そもそも xgboost が結構界隈では有名らしい。 import pandas as pd from sklearn.model_selection import train_test_split from sklearn.preprocessing import Imputer data = pd.read_csv('kaggle/kagg…

pyplot の 円グラフをいい感じに描く

f,a = plt.subplots(nrows=5, ncols=2, figsize=(14, 20)) a = a.ravel() for idx,ax in enumerate(a): v_list = km_center[idx] df_timeband_meanrate = pd.DataFrame( { 'timeband': name_list, 'rate': v_list }, ) print(idx, np.bincount(y_km)[idx]) d…

House Priceの分析2

前処理 %matplotlib inline import numpy as np import pandas as pd import matplotlib.pyplot as plt import scipy.stats as stats import sklearn.linear_model as linear_model import seaborn as sns import xgboost as xgb # <-- アンサンブル学習に使…

House Priceの分析1

kaggleのデータを使って、データの相関とか調べる #invite people for the Kaggle party import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import numpy as np from scipy.stats import norm from sklearn.preprocessing import …

pandasで円グラフ作成

pandasでpltは直接できて便利 defaulte_fig_size = plt.rcParams["figure.figsize"] plt.rcParams["figure.figsize"] = [12.0, 10.0] # plt.figure() # fig, axes = plt.subplots(nrows=4, ncols=1, ) fig = plt.figure() ax1 = fig.add_subplot(221) ax1.ti…

FFM の実装をtensorflowでもgitにあげている人いた。

そろそろ使えるようになりたいなと。 github.com github.com

tensflow で CNN を試す

CNN のチュートリアルをやってみた。 画像以外でも使いたい。 import numpy as np import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) train_data = mni…

matplotlib で figureの大きさを変える方法

import math import numpy as np from matplotlib import pyplot fig = pyplot.figure(figsize=(12, 4)) pi = math.pi #mathモジュールのπを利用 x = np.linspace(0, 2*pi, 100) #0から2πまでの範囲を100分割したnumpy配列 y = np.sin(x) # adjustFigAspect(…

silhouette_samples が Memory Errorになったときの対応

from sklearn.metrics import silhouette_samples silhouette_samples で、Memory Error にならない関数を作ってくれている。 stackoverflow.com

matplotlibについて

matplotlib について、一回tutorial やったほうが良いかも Tutorials — Matplotlib 2.2.2 documentation

matplotまとめてあったので、引用

python-remrin.hatenadiary.jp

Django の models に対応したテーブルを MySQL から grep する方法

以下のコマンドで、取り出す。 mysql -uroot -N information_schema -e "select table_name from tables where table_schema = 'tablename' and table_name like 'prefix_%'" > table.txt

tf の mnist をニューラルネットワークで分析

正解率が90%と低めに出た。。原因は今度調べよう import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) mnist.train.images.shape => (55000, 784) n_feat…

word2vecすごいぞ

結構すごい。。表記ゆれとかも吸収できそう。 from gensim.models import word2vec ls = [] for row in df_id['review_comment'].values[:100000]: ls.append(_split_to_rawwords(row)) model = word2vec.Word2Vec(ls, size=500, window=5, min_count=5, wor…

LDA(Latent Dirichlet Allocation) でのトピック抽出 でレビュー分析

レビューの分析方法をまとめる。 import os import glob import sys from datetime import (datetime, date, timedelta) import logging import re import shutil import tempfile import pandas as pd import numpy as np from scipy.sparse.csc import csc…

pythonのscipyでsparseな行列の変換

sparseな行列についての実装 import numpy as np from scipy.sparse import coo_matrix ) a = np.arange(30).reshape(10,3) print(a) [[ 0 1 2] [ 3 4 5] [ 6 7 8] [ 9 10 11] [12 13 14] [15 16 17] [18 19 20] [21 22 23] [24 25 26] [27 28 29]] b, c, d …

GCPでのレコメンド実装について

Building a Recommendation System in TensorFlow: Overview | Solutions | Google Cloud

pandasを使うときに利用したサイト

applyとかassignとかpipeとかapplymapとか。numpyで対応していたところもあって知らなかった。 qiita.com stackoverflow.com stackoverflow.com

python と java について、vim の mode line を設定する

tab で 4 space 入れる方法。 #!/usr/bin/env python # -*- encoding:utf-8 -*- # vim:tabstop=4:shiftwidth=4:expandtab print('aaa') /* vim:set ts=4 sw=4 et ws is nowrap ft=java fenc=utf-8 ff=dos: */ class JSample13_1{ public static void main(St…

行動履歴をDjangoのcommandsで処理

行動履歴から、相関とクラスタリングを行う # -*- coding: utf-8 -*- # vim:tabstop=4:shiftwidth=4:expandtab import os import sys from datetime import (datetime, date,) import logging import re import shutil import tempfile import pandas as pd …

クラスタリング : DBSCAN の実装

クラスタリングアルゴリズムの中で、クラスタが球状という前提を持たずに、 クラスタラベルを割り当てる。 from sklearn.datasets import make_moons X, y = make_moons( n_samples=200, noise=0.05, random_state=0 ) plt.scatter(X[:, 0 ], X[:, 1]) plt.t…

ボトムアップ式のクラスタリングのグループ化

データ作成 shape: (5, 3) のランダム行列を作成 import pandas as pd import numpy as np np.random.seed(123) variables = ['X', 'Y', 'Z'] labels = ['ID_0', 'ID_1', 'ID_2', 'ID_3', 'ID_4'] X = np.random.random_sample([5, 3])*10 ## pandas のデー…

教師なしデータのクラスタ分析の検証

## クラスタリングのサンプルを作成 from sklearn.datasets import make_blobs X, y = make_blobs( n_samples=150, n_features=2, centers=3, cluster_std=0.5, shuffle=True, random_state=True ) ## クラスタリングを描画 plt.scatter(X[:, 0], X[:, 1], c…

アンサンブル分類器の実装

一般的に、アンサンブル分類器の方が、個別の分類器より性能が高い from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.preprocessing import ( StandardScaler, LabelEncoder, ) iris = datasets.load_iris(…