しおしお おしお

びぼーろくなど

R言語:dir()で取得したフォルダパスを、階層ごとに区切ってDataFrameに格納する

ファイル/フォルダのフルパスを取得した際、予め階層ごとに区切って持っておく*1と、『特定の階層にいる、あるファイル』なんて指定して集計する作業*2が捗ります。

基本は、dir()で取得したフルパスを\で区切ってからDataFrame化するのですが、
そこで一つ躓いたので備忘録がてらに以下メモ
(…車輪の再発明でないことを祈ります)

*1:要はDataFrame

*2:例:保存日時で階層化されたログデータについて、それらの有無を日付別で確認/集計する等

続きを読む

R言語:wordcloud2でワードクラウド

ツイッターでこんな記事が流れてきた

ので、Rのwordcloud2はいいぞ、な個人的備忘録*1

*1:twitterでわさわさやってたやつのまとめ

続きを読む

MATLABで躓いたことメモ

使い始めて*ヶ月、未だに慣れません。

というわけで、ちょっと前に引っかかったMATLABの罠(※使用Verは2017a)

  • table型の要素はeq()できない
  • getfield()で構造体のメンバを指定して一括で値を読んだとき、同じ数字が連続※していると、勝手にunit8型に変換される(※flagみたいにメンバの値がすべて1である等)
  • 読んだ直後にdouble型に変換すると、もとの値がちゃんと出てくる
  • 読んだ値を、型変換せずにhorzcat()でくっつけると、くっつけた先のdouble型だったやつもuint8型になっている

 

できればstruct型(構造体)じゃなくてtable型でもろもろのデータを扱いたいのですが、プロプライエタリなソフトに依存しているデータを扱ったりすると、データを読み込んだ直後の形式が特定の型(今回はstruct型)に限定されてしまいます。

そこからtableに変換しようとしても、型変換がうまくいかなかったり、変換後のデータが思った通りでないといった問題に当たることもあって、結局はstruct型でいっかー、となるこの頃です。

 

あとはスクリプトファイルのエンコードが選べないので、SourceTree上で履歴管理する際にdiff部分が文字化けするといった問題も…
(外部diffツール使えば一応確認はできる)

 

うーむ。