甘党ブログ

経済学とあと他に何か…

LyXの導入(序)


LyXをドキドキしながら導入しようとしてる人への長々としたおせっかい。

ひとことで言うと

期待し過ぎない方がイイっすよ

ってことです。






数式入りの論文を書くにあたってLatex(通称Tex)は非常に便利。


ある程度練習すれば、誰でも非常に美しい数式入りの論文・レポートが書けるのだ。


一方で、TexはWordなどのように直感的に文章を書けるわけではなく、コマンドを打つ→コンパイルをするという手順を踏まなければならない。


例えば

{ \displaystyle
\left[\int_{0}^{1}c_t(j)^{\frac{\varphi_t-1}{\varphi_t}}dj \right]^{\frac{\varphi_t}{\varphi_t-1}}
}

みたいな数式を打ちたければ

\left[\int_{0}^{1}c_t(j)^{\frac{\varphi_t-1}{\varphi_t}}dj \right]^{\frac{\varphi_t}{\varphi_t-1}}

みたいなコマンドをいちいち打ち込まなければならないのだ。


数式を打ち込むだけならまあ慣れの問題だからとして、例えば箇条書きをしたい場合は

\begin{itemize}
	\item ほげほげ

        \item ほげ

        \item ほげ
          \begin{enumerate}
	   
             \item hoge

             \item hogehoge

          \end{enumerate}
\end{itemize}

と打ち込んでコンパイルして初めて

・ほげほげ
・ほげ
・ほげ
  1.hoge
  2.hogehoge

こんな感じになる。


自分は専門書などを読んだ際に読書メモを残したい人間なのだけれど、そのときのメモには結構な頻度で数式が入ったりする。

特にメモは後から修正することもあるのでそういう意味でもTexはうってつけ。




でもね

正式な論文を書くとかならいざ知らず、読書メモとかのためにいちいちコマンド打ち込むのは
だるすぎ。

なので、何とかしてWordのように簡単にかつ美しい数式入りの文章を書けないものか、と思ってたら
あるんですよ、コレが。




LyXってやつです。

これを使うと、Wordのように直感的かつスピーディに華麗な数式入り文章を書けるだろう。



少なくとも

ちょっと書く→コンパイル→チェック→解決→ちょっと書く→コンパイル→チェック→…

って作業はしなくても済みそう。



そう思っていた時期が私にもありました


早速LyXをインストール、使ってみようとしてビックリ!



まあまあ

導入のハードルが高い

んですよ、コレ。


そもそも(Texそのものと違い)インストールから文書の作成までの流れを細かく
解説してくれるサイトがマア少ない。


一応、日本語公式サイト LyX | LyX – 文書プロセッサ はあるのだけれど
オイオイオイってくらい不親切。


TEX Wikiのページ LyX - TeX Wiki も初期設定には詳しいけれど、
ご多分に漏れず見辛い。(失敬!)



ググっていれば様々なサイトが初期設定の仕方・ショートカット・日本語対応について…などなど有益な情報を載せてくださっているのだけど *1


とにかく断片的すぎて一つの設定をしては違うサイトを見て、また一つの設定をしては他のサイトを見て…と

文章書けるとこまでいっこうに進まない!

のだ。



さらにやっとこさ文章が書けるところまで進んだところで気づくのは

LyX特有の融通の効かなさ


と、そこから来る何とも独特な操作性。



…これは仕方がないところもあるのです。

なんせオリジナル・プログラムであるTexLiveの自由奔放さ(ゆえに素人がイジるとエラーの山)を制限した末に直感的な書き心地を得たのだから…!


ただ、正直

期待しすぎた感は否めない

と言うのが今のところの自分の感想。*2


結局、LyX使ったって途中でコンパイルして文書のチェックをしなきゃならないことは変わらなかったし。



ともあれ、あんなに苦しんでインストールしてある程度のスピードで文章を書けるところまで行ったのだから、備忘録も兼ねてマトモな文章が書けるところまでの手順を,

特に自分が引っかかったポイントを重視して記録しておこうと思います。



いつか同じ轍を踏んだ人の助けになれますように。

*1:中でも有用だったサイトを後でまとめてみたいと思います。

*2:むしろ今までお世話になってきた Texmaker (free cross-platform latex editor)とかの補助ソフトの優秀さに気付かされた、いやホント。

Microsoft Edgeのタブクラッシュ問題が解決か!?



先日、こちらの記事で

amatosan.hatenablog.com

全世界のEdgeユーザーを悩ませている(と思う)タブクラッシュ問題を取り上げました。




※タブクラッシュとは
Edgeを一度閉じた後に再度起動するとタブが全て消去されている問題。この際になぜか履歴も
参照できなくなることから、Edgeユーザーは記憶を頼りにタブを開き直す苦行を強いられていた。








しかしながら、この問題どうやらですね…

2016.2.9のWindows Update*1で対策されたっぽい!

んですよ。





現在のところWindows10がインストールされたPCを2台所有しているんですが、その両方において
アップデート後は一度もタブクラッシュが発生してません。







ということで…

さすがだぜ、Microsoft様!

ってわけですな。







私もこの件についてフィードバックを送りまくってた甲斐がありました。
これが解決してくれたおかげでEdgeの魅力が5割増し位になりましたよ、いやホント。




もちろん

ぬか喜びだった

ってなる可能性も否定しきれないので、引き続き使い続けて確認していきたい所存です。

*1:Windows 10 Version 1511 向けの更新プログラム KB3135173

PythonでStataのデータファイル(.dtaファイル)を扱う

非常に苦労したので、忘れないうちに書いておく。


Python環境が整っている(Anaconda+git for Windowsのインストールが済んでいる)ことが前提。


カレントフォルダ(pythonの作業フォルダ)に読み込みたいinput.dtaというファイルが入っている
と仮定して話を進めます。


StatsModelsのインストール


dtaファイルを読み込むことだけなら、pandasというモジュール(Anacondaをインストールしたなら勝手に入っているはず)を使ってもよい。

from pandas import read_stata
data = read_stata('input.dta') 


しかし、このように読み込んだ結果できたdataはちゃんとPythonでいうDataFrame型になっているにも
関わらず、アクセスできないことがあったりして何かと不便。*1


いずれにせよ、OLS推定などを計量経済学的な手法をPythonで用いるときに便利なので
StatsModels: Statistics in Python — statsmodels documentation
というモジュールをインストールするとよい。


インストールはWindowsならコマンドプロンプトから

pip install git+https://github.com/statsmodels/statsmodels

でOK。




dtaファイルの読み込み・変換


dtaファイルの読み込みはStatsModelsの中のiolib.foreignにあるgenfromdtaというメソッドを使う。
これはdtaファイルをNumpy標準のarray型に変換するというもの。

import statsmodels.iolib.foreign as smio
from pandas import DataFrame
arr = smio.genfromdta('input.dta')
frame = DataFrame.from_records(arr)


上記のコードではさらにこれをpandasモジュールのDataFrameメソッドを使ってDataFrame型に変換している。



つまりdtaファイル→numpy.array型データ→DataFrame型という手順を踏んでいるってこと。


多少手間はかかっても、この方法ならdtaファイルのバージョン等に関わらず綺麗なDataFrame型が
生成できる(ハズ)。





その他csvファイルやExcelファイルなどの読み込みは
https://www.kevinsheppard.com/images/0/09/Python_introduction.pdf
のChapter 9を参照のこと。

*1:原因は不明。dtaファイルがマズイのかread_stataの使い方がマズイのか…。

ここがヘンだよ,Microsoft Edge その2(保存したパスワードの閲覧・変更・削除)

Windows10の標準ブラウザ、Microsoft Edgeについての愚痴を書いてます。
amatosan.hatenablog.com
の続きです。


とくに保存したパスワードを閲覧する方法は意外と皆さん悩んでいるのではなかろうか。このエントリが何らかの助けになれば幸い。




とりあえずEdgeのダメなところのおさらい。



1. クラッシュからのタブ全消去の頻発


2. 履歴の表示が遅い


3. 保存してあるパスワードが見れない


4. Updateしたら保存していたパスワードが全部消える。


5. PDFの閲覧が不便



今日は3.と4.について。




3. 保存してあるパスワードが見れない

今の世の中、サイトごとにアカウントとそれに紐づけられたパスワードを作成することはよくあります。一度そのパスワードを使ってログインすると、次のログインが楽になるようにパスワードを保存してくれる機能はEdgeにもあります。



保存したパスワードは二度と見れないけどね。


念のため、保存したパスワードの管理機能はある(設定-詳細設定-保存されたパスワードを管理する)ので、パスワードの変更・削除はできます。

f:id:AmatoSaN:20160116165724p:plain

ただ●で隠されていて見れないってだけで。*1





これセキュリティに気を配った結果なんだろうけど、パスワード設定した本人も見れないっていうのはいかがなものかと。例えばサイトでパスワードの変更を求められて、以前のパスワードを入力しなければならない際に忘れてたらもうアウト。*2


だって見れないしね。




ChromeではGoogleアカウントさえ入力できれば、サイトごとに保存したパスワードを閲覧できる*3 のでパスワードを保存する際にはChromeを使おう。






……これではEdgeを使う意味が全くないので、一応の解決策を。


実はEdgeで保存したパスワードはちゃんとMicrosoftアカウントに紐づけられているらしく、Windows上で

コントロールパネル-ユーザーアカウント-資格情報マネージャ

と進めば、閲覧・変更・削除できます。*4

f:id:AmatoSaN:20160116172304p:plain

やったね!





まあ、でも……


4. Updateしたら保存していたパスワードが全部消える

んだけどな。*5



Windowsのビルドそのものが変わるような大規模アップデートの時は気をつけようね。


というか、もはや他のブラウザ使ったほうがいいんじゃ。


というツッコミは遠慮していただく方向でひとつ。

*1:当然コピペもできません。

*2:実体験です。

*3:保存したパスワードを管理する - Chrome ヘルプ を参照

*4:多少面倒だけど、"インターネットオプション-コンテンツ-オートコンプリートの設定-パスワードの管理"という手順でも見れます。

*5:実体験です。

ここがヘンだよ,Microsoft Edge その1(クラッシュ・タブ消去・履歴)

うちのポンコツPCもWindows10にしてからは割と調子がいい。…そう、評判はさておき使ってみると意外と良くできてるんだよ、10は。


ただし標準ブラウザのEdge、テメーはダメだ。


というわけで、ざっとEdgeのダメなところを並べてみる。




2016.2.19追記

これらの問題のうち1.と2.については解決したかもしれないです!詳しくはコチラをどうぞ。

amatosan.hatenablog.com






1. クラッシュからのタブ全消去の頻発


2. 履歴の表示が遅い


3. 保存してあるパスワードが見れない


4. Updateしたら保存していたパスワードが全部消える。


5. PDFの閲覧が不便


このうち3だけは解決できる裏技?チックなものがある。他はダメ。
より詳しく解説すると…

1. クラッシュからのタブ全消去の頻発


Edgeはもともと”動作の軽さ”をウリにしたブラウザ。そのために余計な機能を削ぎ落としている。*1
当然、ChromeとかFirefoxの様にアドオンで便利な機能を付加することもできない。

ネットサーフィンを楽しむ、という究極目的のための最低限の機能のみを持ち合わせ、その代わりに軽快な動作を保証する……はずだった。





実際使ってみると、確かにタブレットで使用する場合には動作がスムーズ。(というか他ブラウザがタブレット操作に対応しなさすぎ。がんばれよ、Chromeさん。)


ただ普通のノートPC等で使用する場合には体感的にそこまで軽さを実感できる程ではない。特にEdgeはサイトの表示の仕方が、真っ白な画面⇒一気に表示、という感じなので貧弱な回線だとストレスがたまります。



しかもクラッシュが頻発する*2

一度クラッシュするとそれまでに開いていたタブはすべて消える。Chromeと違って最近開いていたタブを参照する機能もないから履歴を見てポチポチと開きなおさなければならない。(しかもこの履歴がやっかいなのだ。2.を参照のこと。)




このクラッシュが、これまたEdgeを一度閉じて再起動した際に非常に起こりやすい。後で見たいな、っていうサイトをタブで開いといて一度Edgeを閉じる。

次の日にブラウザを開いた時に運が悪いと、Edgeクンは

f:id:AmatoSaN:20160116161721p:plain

こんな画面でお出迎えしてくれるのだ!*3


たとえブラウザの設定で”起動時には前回表示していたタブを開いてね”って設定してもお構いなし。履歴からポチポチ。でもこの履歴がやっか……もう、阿鼻叫喚ですよ。


2. 履歴の表示が遅い


さて、そんなわけでEdgeを使っていると他ブラウザと比べて履歴を見なければならない機会が非常に多い。でもこの履歴がね…。

f:id:AmatoSaN:20160116162923p:plain

こうですよ!!

履歴の表示が遅い、遅い。というかそもそも表示する気がないのか。一度こうなると一時間待ってもダメ。記憶を頼りにタブを開きなおし。


さらに悪いことに、この現象はクラッシュが起きた後によく見られる。ということはですよ、クラッシュ⇒タブ全消去⇒履歴全消去のコンボを的確に決めてきてるってわけです。もう…ね。




結構長くなったので続きはその2で。

amatosan.hatenablog.com

*1:発表された当初のEdgeは”右クリックして保存”さえできなかったのだ!今はできるよ、Updateすればね。

*2:他ブラウザと比較して

*3:これ、このエントリを書いている途中で発生したのです。トホホ。

(備忘録)Python環境のインストール

ようはQuantitative Economicsを参照してくださいって話なんだけど。





ステップ1:Anacondaのインストール


AnacondaはPythonを動かす上で便利な統合環境の一つで…(以下略。
Why Anaconda? | ContinuumからOSと64bitか32bitか(Windowsならコントロールパネルーシステムとセキュリティーシステムで見れる)を選択,ダウンロードしたものをダブルクリック。64bit版だと結構重い(500MBぐらい)ので注意。



ステップ2:Gitのインストール


Pythonでは世界中の天才たちが用意したモジュール(パッケージ)をインストールして用いることができる。基本的にはコマンドプロンプト(cmd)で

pip install patsy pandas

などと打ち込めば勝手にインストールしてくれる。上のコードではpastyとpandasっていうモジュールをインストールしている。




あらかじめAnacondaに含まれていないPyMC3などのパッケージは,cmdに

pip install git+https://github.com/pymc-devs/pymc3

などと打ち込むことでGitHubからダウンロード・インストールできる。




しかしWindowsではGit for Windowsをインストールしないと,このコマンドが機能しないので注意。

opcdiary.net


インストール時に注意するのは”Adjusting your PATH environment”のところで”Use Git Bash only”でなく”Use Git from the Windows Command Prompt”を選ぶこと。これをしないと上のようにcmd上でgitコマンドが使えない。環境変数とかに詳しくない場合は,とりあえずこれを選んでおけば無難だと思われる。



インストールが終わったら一度cmdを閉じないとgitコマンドが使えないのでそれも気をつけよう。*1

*1:なぜか自分の環境(Windows10 2016/1/15時点最新ビルド)だとGit for Windowsインストーラがパソコンに悪影響を及ぼす(セキュリティ署名の関係?)と表示されたのだけど無理やりインストールしました。今のところ悪影響は出ていませんが,自己責任でお願いします。