意味悲鳴

PythonとかUnityとか.技術ブログでしたが,研究ブログにシフトしました.

面談1時間でリカバリした

prpr.hatenablog.jp

こんな記事書いてて,今日研究に関する面談をけっこう遅い時間にやっていただいた.開口一番に「こういうのやるのは全然良いし,自分から声あげてくれたのは大変いいことだと思う」と,ポジティブな方に持っていっていただいて大変ありがたかった.まぁ,いろいろわかった上で言ってそうな感じだけど.

面談するにあたって,前に某所でエンジニアの方に教えていただいた,事前に何話したいかを箇条書きにメールするという方法を試したんだけど,これがやっぱり良かったみたい.話聴く側も,何を言ってあげればいいかをわかった上で話に入れるようで,かなりすんなり話が進んでいった.

面談の内容についてなんだけど,これまでこう,半年ぐらい悶々としていた内容が,1時間程度話した結果驚くほど進んだ.多分こういう方向やりたいんじゃない?というのが大抵的確なことばかりで,ひれ伏すレベル.いろいろ決まって,来週までにやることもある程度指示された.頑張ります.

で,その後研究室の先輩にも言われたんだけど,やっぱり自分からはやめにヘルプをするのは大変良いらしいし偉いからどんどん声上げろと言われた.結局何も言わずに抱えたままでいられる方が指導する側にとっても面倒なんだと思う.そういう意味で,私が今回面談を申込んだのはひょっとしたら教授の目の上のたんこぶが引っ込んだ形だったのかもしれない.教授自身も,学生が数十人もいる研究室だから,全員に等しく目配りすることなんて出来ないんだろうし.

とりあえず,来週まで支持された内容をがんばって調べます.デレ4th参加するしそれなりに時間がないのだけど,せっかく道を作っていただいたので頑張って辿ろうと思います.以上.

荒んでいる

うぅん,苦しい.苦しいなぁ.

anond.hatelabo.jp

なんかこれを読んでから,本当に自分は今こんな感じなんじゃないかと思っていて大変苦しい. ので,研究室の教授に面談のメール送った.もともと別に期待されていないだろうから,いっそ期待値0から1になるぐらいになっておきたい.

それと,研究課題について,うちの研究室は基本的に興味が有ることを自分で見つけて頑張ろうねスタイルで,私もそれが良いと思っていたんだけど,現状ちょっと,ねぇ,無理くさいですなぁ.ゼミ着いてくのも死にそうなのに,無理ですなぁ. みたいな話も今度の面談でしてきます.兎角,現在抱えていることを口に出して,あーだこーだ叱られたいと思います.それぐらいになっておかないと,ちょっとマズいかなぁ,と. とりあえず留年だけはしたくない,というか出来ないので,それを回避することを最優先で考えて生きていきます.以上.久々の研究云々メールでした.

あと,やっぱり書ける内容の方の日報をここに書くことにします.書かないより書いたほうが良いと思う.そんな感じです.よろしくお願いします.

Ubuntuで環境構築メモ(zsh+Anaconda3)

サーバのUbuntuの自身のホームディレクトリ上にAnaconda引っ張ってきて,インストールして,ログインシェルをzshにして,zsh立ち上げたらAnacondaになるようにします.みたいなやーつです.超絶基本的ですが,大切.ぶっちゃけ,virtualenv使うの面倒くさいだけです.

まずはファイルをダウンロード.

wget https://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh

そんでもってインストール.

bash Anaconda3-4.2.0-Linux-x86_64.sh 

色々聞かれるので,淡々と答えると終了.環境変数は変えるようにしておくとよろし.

で,ここでpythonを実行すれば,Anacondaの方が実行されるはず.

$ python
Python 3.5.2 |Anaconda 4.2.0 (64-bit)| (default, Jul  2 2016, 17:53:06)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

できたぁ.とならない人もいる可能性.そんな人は.bashrcを編集すれば良い.とは言え,この後zshを使うように設定し直すので,本当に編集すべきは.zshrcです.こっちにAnacondaのインストール先を以下のように記述すれば良い.

# デフォルトだったらこんな感じになるはず.ユーザ名部分は各自編集してください.
export PATH=/home/[ここにユーザ名]/anaconda3/bin:$PATH

これでサーバのUbuntuでAnacondaに関するコマンドが実行できるようになります.やったー.

Python3で配列の要素についてランキングを作って云々する

http://pythonhosted.org/ranking/ これ使う,以上. でも良かった気がするんですけど,だいぶ前のものでメンテもされていないっぽいので,今回はscipyのrankdataを使って,配列のランキングを拾ってきて,n位の要素を取得するみたいなことをしてみたいと思います.素人だからあんまりまともに取り合わないこと.

In[2]: from scipy.stats import rankdata
In[3]: import numpy as np
In[4]: array = np.array([8,6,9,4,5]) # これ使う

早速rankdataを使ってみる.

In[5]: rank = rankdata(array)
In[6]: rank
Out[6]: 
array([ 4.,  3.,  5.,  1.,  2.])

ここでお気づきの方もいるかもしれませんが,順位が照準になっています.しかもこれ,オプションとかで指定できません.ぐぬぬって感じです.

もうこれだったら普通にsorted使ってソートしてインデックス指定すればそれで終わりで良くないっすか?という気分になると思うんです.配列の要素がtupleのときとか対応できないっぽいし.私も今そう思っています.

が,一応これを使うメリットがまったくないわけでもなくて,リスト内に同じ要素が存在していた時,それをうまい具合に順位付けしてくれます.

ドキュメントから引用してくると,

>>> from scipy.stats import rankdata
>>> rankdata([0, 2, 3, 2])
array([ 1. ,  2.5,  4. ,  2.5])
>>> rankdata([0, 2, 3, 2], method='min')
array([ 1.,  2.,  4.,  2.])
>>> rankdata([0, 2, 3, 2], method='max')
array([ 1.,  3.,  4.,  3.])
>>> rankdata([0, 2, 3, 2], method='dense')
array([ 1.,  2.,  3.,  2.])
>>> rankdata([0, 2, 3, 2], method='ordinal')
array([ 1.,  2.,  4.,  3.])

こんな感じで,同じ値があったら上の順位をつけるか下の順位をつけるか,それとも同じ値をつけずに順位付けするかを指定できます.これを自前で実装するのはそれなりに面倒だし,そういう意味では良いのかも?今回は使っていませんが.

で,実際使用する用途としては多分こんな感じ.

In[9]: np.where(rank == 5)
Out[9]: 
(array([2], dtype=int64),)
In[10]: array[np.where(rank == 5)]
Out[10]: 
array([9])

こんな感じでした.ちなみにPythonの普通のlistにnp.where()をぶっこむとTupleだからインデックスちゃんと指定しろって怒られるのでご注意ください.

中々使う場面無いと思うんだけど(上位n位全部欲しいとかばっかりだろうし),任意でどこが見たい!という時は便利なのでは.

PycharmでDeployment設定でハマった話

時間もないのでサクサク書いていく.

問題

  • なんかPycharm使って,コードをサーバ上にじゃんじゃか乗っけようと設定したら,「invalid relative file name」とかなんとか言われる.
  • Root Pathの…で該当のフォルダ見てみたら,なんかファイル名が言われる
  • ls -laで確認すると該当ファイルがある

原因

  • なんか言われているファイル名が原因

対処法

  • 例のファイルを消し去るのが一番の対処法
  • rm で消そうとしたけどできない
  • どうやら以降のページのように,Windows側でファイルを転送したときのゴミが残っていたらしい

stackoverflow.com

oxynotes.com

あとは動くようになっているはず.素晴らしい.

苦しくなったらブログを書こう

www.lifehacker.jp

これ読みました.確かにここに書かなくなってから研究にせよなんにせよ,もういろんなモチベーションが完全に死んだように思います. 記事によると,毎日文章を書くのもそれはそれで効果が薄いということで,タイトルの通り,苦しくなったらブログを書こうと思います.

ただ,ここ数週間,本当に苦しみしか無い.何も手に付かないしやりたくないし,それじゃマズいというのが分かっているのがなお苦しい感じがしていて,誰かにケツひっぱたいてほしい気分です.

インターンシップの課題に取り組んでいても思ったんですけど, 私はどうやら期限を作らないと,しかもその期限に強制力が存在しないと本当に何もしないみたいです.これ,本当に厄介.やらなければいけない状況にならないとやらないって,仕事やるぶんには良いのでしょうけど,裏返して言えばそれ以上のことが出来ないってことですからね.マズい.大変にマズい.なんとかせねば.

とりあえず夏休み中,インターン2社行きますけど,その間も研究っぽいことは引き続きやっていきたいですね.そうしないと本当に,終わる.人生終わる.なんとかしないと.