pythonで再現性をもたせるためシードを揃えて行をシャッフル

シェルスクリプトでシードも揃えたままシャッフルできたら楽だったのですけど、ちょっとわからなかったのでパイソンで、リストをシードを揃えてシャッフルしてその順番に並べるってコード。

 

#!/usr/bin/python
# -*- encoding: utf-8 -*-

import numpy as np
import sys
pit = 1 # シードここの値を変える


argvs = sys.argv
argc = len(argvs)
if(argc != 2):
    quit()
argvs[1]

def shuf(fn):
    fp = open(fn,"r")
    fw = open(fn.replace('scale','scale.shuf'),"w")
    inline = fp.readlines()#一行ずつ読み込む
    las_arr = np.array(range(len(inline)))#行数分リストを作る
    len_inline = len(inline)
    np.random.seed(pit)
    np.random.shuffle(las_arr)#リストをシャッフル
    for i in range(0,len_inline):
        for j in range(0,len_inline):
            if las_arr[i] == j:#リストの順番と揃ったら
                fw.write(inline[j-1])
file_name = "filename"+"argvs[1]+".scale"#ファイル名
shuf(file_name)

 

 

 

ナンバーと一部の文章があるテキストを元に、ナンバーと文章全体のテキストから、文章を抜き出す。

 f:id:alakialaca:20161013000928j:plain

はてなの中で写真の縦横って変えられないっぽい?

a.txtがこんな感じ。

f:id:alakialaca:20161021155124j:plain

b.txtがこんな感じ

f:id:alakialaca:20161021155126j:plain

a.txtの情報をもとにb.txtから情報を取る感じのやつです。

とりあえず、ナンバーと一部の文章があるテキスト(a.txt)の情報を元に、ナンバーと文章全体とurlがあるテキストから、a.txtのナンバーのある文章をb.txtから取り出したかったため作ったプログラムです。

続きを読む

HP中の%の入っている文を取り出したかったから作ったやーつ

なにで使ったかはひ・み・つ!!

#!/usr/bin/python
# -*- encoding: utf-8 -*-

import re
import urllib2
pattern1 = re.compile(r"\d+\.\d+\s%|\b\d+\s%|\b\d+%|\b\d+\s*\.\d+\s%|\b\d+\s*\.\d+%")#数字と%のやつ

url ="HPのURL"

fp = urllib2.urlopen(url)
inline = fp.readlines()
len_inline = len(inline)
for i in range(0,len_inline):
    a = pattern1.findall(inline[i])
    if a:#文字列型の場合は空文字列("")は偽(false)、""以外は真(true)
        print inline[i]   

 

csvのファイルの数字の部分だけ消して、フォルダ内のテキストを結合

csvファイルを一つのテキストファイルにまとめたかったので。

f:id:alakialaca:20160805193242p:plain

↑エクセルで開いたとき。

f:id:alakialaca:20160805193246p:plain

↑メモ帳で開いたとき。

 

この数字の部分消したいと思ったので。

 正規表現でたくさん数字ある部分を消して結合した。

続きを読む

ball playing という言葉から baseballという言葉にをつなげられなかった。

Word2VecをPythonでやってみる – 学生コーダーの備忘録

コードは上記サイト様のを丸パクリです。

 

僕としてはball playing からbase balと連想できるのかと、そんな軽い気持ちです。。。

 

まずは公式様のテストデータで学習して、ball playingで近いものを30個上げて見ましょう。

f:id:alakialaca:20160722000740p:plain

続きを読む