すえー blog

学んだ情報をOutPutする場所です。

Macのスクリーンショットの保存先を変える方法

環境

ProductName: Mac OS X
ProductVersion: 10.13.4
BuildVersion:   17E202

背景

Macスクリーンショットデフォルトでデスクトップになっているのでデスクトップが荒れるのが辛いのでダウンロードにしたいなーって思ったこと。
そこで調べた内容をメモする。

方法

↓保存したいフォルダを指定
$ defaults write com.apple.screencapture location 保存したいフォルダ
↓サービスを再起動して設定を反映する
$ killall SystemUIServer

設定を戻したい場合

↓デフォルトに戻す
$ defaults delete com.apple.screencapture location
↓サービスを再起動して設定を反映する
$ killall SystemUIServer

AnacondaのJupyterでModuleNotFoundErrorが発生した場合の対策

環境

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.13.4
BuildVersion:   17E202

背景

Anacondaではconda create -n 仮想環境名 python=XXX で仮想環境を作成できる。
その後、source activate 仮想環境名で仮想環境を有効化してjupyter notebookを起動して、適当にモジュールをインストールしてimportしたら起きた。。。。

原因

仮想環境内にはjupyterのライブラリが無く、起動したjupyterはrootのjupyterであることが原因で少しはまってしまった。。。

対策

  1. conda create -n 仮想環境名 python=XXX
  2. source activate 仮想環境名
  3. conda install jupyterorpip install jupyter
  4. 任意のモジュールをインストールする

参考

weblabo.oscasierra.net

Macでシンボリックリンクを作成する方法

背景

  • 最近sshして作業する機会が増えました(今までリモートデスクトップだった。。。。)
  • そこでsshする際に user@192.168.199.100 みたいな感じで毎回ログインしてたら、「configファイルで管理したら?」と教えてもらったのがきっかけでした。

環境

方法

  • ln -s [リンク貼る場所] [リンク貼りたい場所]
  • 例: ln -s $(pwd)/ssh_config ~/.ssh/conf.d/test
    ※ $(pwd)これは今いるディレクトリのパスをコマンドに引き渡すことができるやつらしい。

movをwindowsで見れるようにする方法

背景

  • iphoneとかで撮影した動画をダウンロードして「〜.MOV」の拡張子ままwindows環境とかで再生できない現象があって、調べると「〜.mp4」の拡張子に変換すれば良いらしいのでメモ

環境

方法

  • ffmpegを使用
  • brew install ffmpeg でイントール
  • ffmpeg -i [変換対象の動画] [変換後の動画]
  • ffmpeg -i hoge.MOV hoge.mov で実行
    ※変換後のファイル名は別になんでも大丈夫

pip install -e .で「TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'」エラーが出た時

現象

setup.pyに記載されているライブラリをインストールしようとした時に起きた
pip install -e .

対処法

インストール中にネットワークの接続状況が悪いと起こるらしい。
なので、めげずになんどもトライすれば良い。
それかライブラリのインストールを分けた方が良い。

参考

kinformation.wjg.jp

Javaをやってた俺がpythonでちょっと混乱したこと

自分のメモも兼ねて残しておく。

内容

それはpythonでクラスを定義して、メソッドを作成した時に起きた。
まずはpythonのクラスの定義

class hoge:

次はメソッドの定義

class hoge:
    def fuga(self):
        ・・・・・・・

なんかselfが出てきた。
javaで言う、this的な扱いだと解釈した。
上記のメソッドを呼び出そうとするとselfの引数を入れろと怒られる。。。
selfはいらないんだよなーと思いながら、調べると@classmethod@staticmethodがあるらしい。

対処法

こうすれば良い。

@staticmethod
def a_method():
    ・・・・・・・

メソッドからクラス内のメソッドを呼び出す場合はこうすれば良い。
clsにクラスのインスタンスがいるので呼び出せる。これもjavaで言うthisがないのでthisの代わりだと解釈している。
調べるとインスタンス変数にはアクセスできないらしい。

@classmethod
def b_method(cls):
    cls.a_method()

これがスマートなのかわからないが、不要な引数は受け取る必要はないと考えているので一旦、この考え方で進んでみようと思う。

2017年振り返り

人生を大きく左右する決断をした気がする

なぜかというと今年は2回も転職したからです。
まず、4年間働いた前々職の会社を退職して、8ヶ月働いた前職の会社を退職しました。
その後、12月からちゅらデータ株式会社に転職しました!
全く経験したことのない、データサイエンティストの仕事をさせてもらってます。転職をチャンスをくれた隊長には感謝しかありません。

仕事の振り返り

トータル振り返るとエンジニアとしてすごく良い経験が出来たと思う。
まずは前々職で下流工程やリーダーが出来たこと。
前職では上流工程やスマホアプリの大枠の仕組みが知れたこと。
最後に今はデータサイエンティストとして、新しい事に挑戦できている事が良かったと思う。
ホントにフルスタックでないと厳しいので日々勉強が必要だと改めて感じでいます。
後は統計学や数式を読む力か。。
やる事は沢山ありますが、今はすごく充実しています。
今月は怒涛の1ヶ月でしたが、みんなでなんとか乗り切れたので嬉しい(^ ^)
会社のみんなにすごく助けられました!!ありがとうございますm( )m

2018年の目標

  • 早く一人前になる
    • 期待されている役目を一人で遂行する
  • outputを増やしていく
    • ブログ
    • 発表
  • 統計検定3級取る
  • 数式に強くなる