ねもぷらす

ふぁいんでぃんぐねもの日記。プログラミングとか育児とか

scikit-learnで丹次郎の血液型を推測する(未完成)

scikit-learn を付属のデータセットを使用せずに理解しようと思い立ったものの、
「名前から性別を推測する」という何の役にも立たない例しか思いつかないうえに
文字列を含むCSVを読めば

ValueError: could not convert string to float: '氏名'

無理やり読み込んだ変数を fit に渡せば

ValueError: could not convert string to float: '氏名'


解決策にたどり着くことができず…
より正しい方法があるはずですが、今のところ下記の方法が精一杯。

import numpy as np
from sklearn.svm import SVC
from sklearn import preprocessing
from sklearn.model_selection import train_test_split

# 文字列対応。np.loadtxt ではエラーになる
data = np.genfromtxt('personal_infomation.csv', delimiter=',', dtype=None, encoding="utf-8_sig")

# 日本語文字列を含む列は1文字ずつコードポイントに変換
# 
def codelist(s):
    return [ord(i) for i in s.ljust(10)]

x = [codelist(i[0]) for i in data]
y = [i[1] for i in data]

# 学習の実行
clf = SVC()
clf.fit(x, y)

# 予測
clf.predict([codelist('竈門丹次郎')])


personal_infomation.csv は疑似個人情報データ生成サービスを利用して
氏名と血液型のみのデータを1,5000件ほど作成。
ちなみに丹次郎は B型 と予測されました。
精度検証するのを忘れていたのでやり直しorz

pyautogui スクリーンショットのアクティブウィンドウに枠線を引く

pyautogui で自動運転を作りこんでいる時、クリック操作前後のスクショを残しておきたかったので書いたヤツ。
python はやりたいことがズバズバ書けて面白い

import pyautogui
from pyautogui import Point
from datetime import datetime
from pyrect import Box
from PIL import ImageDraw

PREFIX = ''
SUFFIX = ''

def save(position:Point=None, box:Box=None, color:tuple=(255,0,0), filename:str=None):
    im = pyautogui.screenshot()
    
    if filename is None:
        filename = "{0}{1:%Y%m%d_%H%M%S_%f}{2}.jpg".format(PREFIX, datetime.now(), SUFFIX)
    
    if position is None:
        (x, y) = pyautogui.position()
    else:
        (x, y) = position
    
    if box is None:
        box = pyautogui.getActiveWindow().box
    xy = (box[0], box[1], box[0]+box[2], box[1]+box[3])
    
    draw = ImageDraw.Draw(im)
    for i in [5, 10]:
        draw.arc(xy=(x-i, y-i ,x+i, y+i), start=0, end=360, fill=color, width=3)
    draw.rectangle(xy, width=5, outline=color)
    
    im.save(filename)
    return filename


if __name__=='__main__':
    import __main__
    __main__.PREFIX = 'screenshot_'
    print(__main__.save())

15年前の登山靴

高校三年間+大学四年間使ったあと、軽く洗って実家に放置してた我が相棒。
久しぶりにみたらこの状態…
f:id:yamazaru_rengou:20180421172517j:plain

捨てられたと思ってた分、まだ生きてたので履けるなら履こうと思い水洗い。

f:id:yamazaru_rengou:20180421172526j:plain

なんだか行けそうな気がする!
とりあえず一晩乾かして様子見~

raspberry pi zero w 一日目

木曜日の夜、夕食後。



長男のメディア許容時間は30分なので、19:30~20:00が勝負。
今日は電源入れる所までを目標、osインストール済みだから楽勝♪
f:id:yamazaru_rengou:20180419193157j:plain
繋いで…電源オン!と言ってもスイッチは無いので電源を接続。するとテレビに…
f:id:yamazaru_rengou:20180419193228j:plain
ラズパイマークが!

でも…


すすまなーーーい!!

f:id:yamazaru_rengou:20180419193245j:plain

osを認識してくれない?
仕方ないのでsdカードをフォーマットしてos入れ直し。
時間もないし祈る気持ちで再度電源オン!
いきなり起動できた!!
f:id:yamazaru_rengou:20180419195545j:plain

焦って写真とれずorz
ここからosインストールで20分くらいかかりました。
週末はScratchまで使えるかな~