なおすけの落書き帳

毎日がエブリデイ。

ExcelでCSVを読み込むときの注意

完全な備忘録。
Excelって気を利かせてるのかそうじゃないのかよくわからない

やりたいこと

CSVExcelで開いて、xlsxファイルにコピペしたい。ただそれだけ。
ただし、CSVのデータには001といったような、0埋めした数字も入っています。

CSVの仕様をざっくりと

CSVComma Separated Valuesの略称で、RFC4180*1で言及されており、公式仕様とみなされています。
ただし、公式仕様として標準化はされていません。

CSVとは名称のとおり、カンマ区切りのデータの集合体です。
一般的なデータはこんなかんじ。

"id","姓","名","生年月日","アカウント名"
"1","友利","奈緒","1990/08/30","ntomori"
"2","乙坂","有宇","1990/01/01","yotosaka"
"3","西森","柚咲","1990/12/31","ynishimori"

データの横を行、縦を列と呼び、""で囲まれた文字が値です。

値を""で囲むことを省略することもできます。
ただし、このときは条件として「値に",、制御文字を含まない」ことが必要です。

Excelの挙動

入力データはこのようなものであるとします。

1,hogehoge.txt,2015/01/01,001
2,foobar.txt,2015/01/02,002,
:
100,piyopiyo.txt,2015/12/31,100

Excelに読ませるとどうなるかというと…
(csv作るのが面倒だったので、2列目、3列目は固定文字列にしています) f:id:naosuke2dx:20151216135351p:plain:w200
このように、勝手に値が変えられます。
Dの列を文字列にしたとしても、0埋めされません。
これをこのままxlsxファイルに流してもただの値としてしか出ません。

どうするのか

csvファイルを開かずに、新規(新規じゃなくてもいいけど)でxlsxファイルを開きます。
その後、データタブから、テキストからインポートをクリック。
対象のCSVファイルを開きます。
f:id:naosuke2dx:20151216141300p:plain:w200
f:id:naosuke2dx:20151216141334p:plain:w200
次へ
f:id:naosuke2dx:20151216141353p:plain:w200
区切り文字にカンマを追加
f:id:naosuke2dx:20151216141921p:plain:w200
0埋めしている列を文字列として扱うよう設定。完了
f:id:naosuke2dx:20151216142001p:plain:w200

できたー
f:id:naosuke2dx:20151216142616p:plain:w200

おわりに

Excelさん、お願いだから邪魔をしないで。

作業合間に見たいアニメ

前説

www.adventar.org

この記事はSLPアドベントカレンダー5日目の記事です。
昨日は阪急くんが書きました。
SLPの下部組織でアニメ視聴プロジェクトつくりたいのでこんな記事を書きます(大嘘)

はじめに

どうも。SLP元所長で気が付くと上位組織の会長になったなおすけです。
みなさん、アニメと聞くとどんなアニメを想像しますか。アツいアニメを想像する人も多いのではないでしょうか。
魔法と剣の話とか、巨人の話とか、6つ子の話とか…。
今日はそういうアニメの話ではないです。もっと日常的なアニメの話をします。

SHIROBAKO

なんこれ

shirobako-anime.com

去年の冬から今年の春までの2クール連続で放送されたアニメです。
未だに根強い人気のあるアニメですね。アドベントカレンダー*1もやってます。
これはアニメを作る人達を描いたアニメです。
アニメへの情熱がすごく感じられます。変な話*2、すごく良いアニメです。

なぜ見るべきか

ソフトウェア業界に通ずる話が多いです。
自分 簡単に列挙するなら、こんな感じ。

  • 1クールアニメの作成の工程管理
  • 監督によるリテイク
  • アニメーターへのしわ寄せ
  • トライアンドエラーの繰り返し
  • 忙しい時に新しいプラグインを作成
  • ひどい編集

これらはすべてアニメ中にかかれています。しかもこれのせいで大トラブルに巻き込まれかけます。

これがソフトウェア業界になるとこんな感じではないでしょうか。

  • プロジェクトのマネジメント
  • 突然の仕様変更
  • エンジニアのデスマーチ
  • ビルドとエラーの繰り返し
  • 忙しい時のタスク自動化スクリプト作成
  • なにもわかってない顧客

結局どこの業界も同じなんだなーって感じです。

あと、マスコットキャラクターのミムジーとロロがめっちゃかわいいです。
この子たちはこの物語の解説役であり、主人公の心象を表現してくれたりします。

http://cdn-ak.f.st-hatena.com/images/fotolife/k/konifar/20151201/20151201164714.jpg *3

感じてほしいこと

このアニメは、主にストーリーを牽引する宮森あおいという女の子の成長物語でもあります。
(他のキャラの成長物語でもあるけど)
そのキャラが、昔は漠然と「アニメの仕事をしたい」と思っていただけだったのが、いろいろな出来事を通して、もっとこうなりたいという思いを持つようになっていきます。
ちょっと前にしたプレゼンで、現実とのギャップに悩みますよねって話をしたと思いますが、宮森あおいも同じように悩みます。
そこをどう解決していくかという方法を見て感じて欲しいです。

あと、世の中には理不尽なことも多いということを見て感じてくれればと思います。

その他

SHIROBAKOは、IT業界の人にもとても人気で、Rebuild.fmという有名なPodcastsでも何度も話されてます。
ぜひ見よう!

SHIROBAKOアドベントカレンダーはこちらです。
www.adventar.org

まとめ

???「つまりこの記事はなにもかいていないのとおなじですよね?」

RubyWorld Conference2015に行ってきた

だいぶ寒くなってきた今日この頃、皆様いかがお過ごしですか。
私は卒論に向けてぼちぼちといろいろ進めています。
そういえばSplatoonをいろいろな事情で手に入れた*1ので、最近やってます。おかげで睡眠不足です。
そんなわけで本題行きましょう。

RubyWorld Conference

RubyWorld Conference2015に行ってきました。
13日は徳島に行かなければならない用事があったので、参加したのは1日目だけですが。
今年のテーマは「Ruby多様性」ということで、Rubyの様々な利用法をや活用事例が紹介されました。
聞いた感覚としては、mrubyの話が多かったかな。

以下つらつらとまとめや感想を。

基調講演1

題目: セカンドシステムシンドローム
講演: まつもとゆきひろ

Matzによる基調講演でした。
ソフトウェアを作るのは難しいという話から始まりました。現在、ソフトウェアは明確な解を持たず、誰も何を作るべきかわからない状態である。開発を続けると、段々と古くなっていき、複雑になっていく。
そうすると、保守も困難になって、作り直したくなってしまう。この「作り直したくなる」というのがセカンドシステムシンドロームである。

この話はすごく身に覚えがある話だし、大学でもよく聞く話なので、なるほどなあと思いながら聞けました。
この症状のソフトウェア業界の例でPのつく言語2つ*2や、Rubyの話*3もでていておもしろかったです。
実際に作り直していく場合はどうするべきかという指針も出していて、今後の参考にしたいと思います。

A-5-1

題目: 非Railsアプリケーションのマルチデータベース対応と高速化の取り組み
講演: 冨田 昌宏 (株式会社富士通システムズ・イースト)

Rubyを使用したWebアプリケーションをマルチデータベース対応や高速化した話でした。
RoRが有名になる前に作られたアプリケーションで、色々としているとのこと。
Mysqlに対応した独自ORMをマルチに対応させるのに様々な苦労をしたらしい。
泥臭い作業をきちんと1つずつこなす重要性を確認できたとともに、データの重要性も再確認できました。
"推測するな、計測せよ"という言葉を何度も出していました。

A-5-3

題目: mruby組込みシステム開発の勘所~ETロボコンへのmruby適用事例~
講演: 三牧 弘司 (SCSK九州株式会社)

mrubyを使って、ETロボコンへ挑戦したという話でした。 もともとEV3マイコンにmrubyを乗っける話とかは聞いたことがあり、その当時はめちゃくちゃ遅いとの噂だったのですが、かなり早く動いていて驚きました。
私が所属しているサークルでもETロボコンに挑戦しているので、Rubyも使えるんだぞーとプッシュしてみようと思います。

A-5-4

題目: Building Ruby on Rails applications with the Taiwan Government 台湾官公庁におけるRuby on Railsを導入する事例
講演: Tsehau Chao (5xRuby Ltd)

台湾の官公庁にRoRアプリケーションを導入したという話。
どこの官公庁も似たような感じなんだなーと苦笑いしました。
この日の発表の中で、一番ネタを入れてきていました。

レセプション

まあぼちぼちとご挨拶して回りました。

その他


参考文献

*1:バイト先の会社のを借りてる

*2:PeとかPyとか

*3:Ruby1.8と1.9

El Capitan入れて12時間くらい経った感想

昨日夜、シコシコと家のPC群をアップデートしてました。 具体的には、iMacYosemiteからEl Capitanに、Windowsマシンを8.1から10に変えました。
あと、iPhone 6sをiOS9からiOS9.1にした感じ。
Windows10については公開してすぐにインストールした*1ので特に新しいことはなし。
それよりもEl Capitanは昨日初めて導入したので、ちょっとワクワクしながら使ってます。 以下、12時間経過の感想*2

IME

超便利。Live変換がマジで便利。Twitterがすごく捗る。
少し重い気がするけど、まあこんなものかなという感じ。 ただ、記号を常に半角にするとか、そういう設定ができなくなっているらしい。
これはかなり困るので、しばらくはGoogle IMEのまま生きていこうかな。

Split View

なんかイマイチって感じ。Windowsがやってるアレの方が使いやすい。
ただ、これはまだあまり使っていないので、もう少し様子見。

Mission Control

これはYosemiteに比べてかなりよくなった印象。
画面になにがあるのかとかが見やすくなっていいね。
でも仮想デスクトップ出してる時に、別のほうになにが乗ってるのかが見えないのはマイナス。

その他

速くなったっていう感想をよく見かけるけど、体感的にそこまで速くなったという感じはないかな。
普段電源を入れっぱなしにしているので、40日くらい起動して、それでも遅くならなければ優秀だと思います。
アップデートだったので、brew使うときにSIP*3でこけたりはしていないし。
ただ、ラップトップのほうを買い換えようと思っているときにSIPは邪魔かなあ、とちょっと思います。


そんな感じで。もう少し開発とかで使ってみて、思うことがあればまた記事にします。

*1:参照記事

*2:実際には3時間くらいしか使っていない

*3:System Integrity Protection

モニタ買った

ちょっと前に、古いモニタを知り合いに上げたので、しばらくモニタ2枚*1で生活をしていました。
流石に2枚だときつかったので、新しく1枚買いました。

www.eizo.co.jp

これなんですが、近所のPCショップに行くと14000円で売ってたので、即決。
一応、画面の確認をしたけど、ドット抜けも変な焼きつきもなく、いい感じ。
帰って確認したら使用時間は1000時間くらいでした。

今までモニタはmitsubishiを使っていたのですが、最近はもうなくなったらしい*2ので、別のメーカーを買いました。
とはいってもEIZOとかいう神ブランドなので、特に問題はなさそう。

次に経済的余裕ができたら、アームを買って、今あるモニタの1つを縦長に設定してみようと思います。

*1:iMac 27inchと三菱の20型

*2:io-dataに売却されたらしい

近況

最近、更新をサボっていますが生きています。
Amazonプライムビデオ*1がすごく人生を豊かにしてくれます。
あと話題になっていたBack to the Future*2も見ました。

ブログの下書きは5個くらいたまってます。書くネタももうちょいあります。

そんな感じで3日までの休みを謳歌したいと思います。

*1:学生会員なのでプライムが安い

*2:今まで見たことなかった

第11回目 Scrap Challenge 参加記 その2

第11回目 Scrap Challenge 参加記 その2

前の記事の続きです。 別にイベントが2日間会ったわけではないので注意。

前日の様子

徳丸本買いに行きました(熱い宣伝)。
このタイミングじゃないと買いにいけなかった意識低い勢。
一応でも徳丸本を読むとかはしてました。

当日の僕の様子

当日の朝に上京する予定だったので、05:35発の電車に乗らなければなりませんでした。
あと、全く準備をしていなかったので、朝起きないととても困ったことになるはめになったのですが、何とか起きることが出来ました。

渋谷到着

反逆のGoogleMapで、会社の住所を出してくれなかった結果。

迷わずに行けば5分程度で行けたのですが、迷ったので20分ほど渋谷駅前をグルグルしていました。

会社に突入

受付開始の5分後くらいに到着したんですが、あんまり人が集まっていませんでした。

とりあえずマシン起動したり、交通費の精算とかをわちゃわちゃとしていました。

午前の部

徳丸本の復習的な内容とか、実際にmixiで起こった事案とかについて解説。
みんな結構緊張していたのか(自分含め)、社員さんが「しってますか?」と問いかけても誰も手を挙げない…。
その後、問題デモをしました。
イマイチ感覚が掴めてなかったので、この時間はぼーっと眺める感じでした。

Slackとか見てると結構解いてる人多くて、Twitterで検索するとこんなかんじでした。

お昼

叙々苑美味しかったです。

突然のLT大会

mixiはVの文化だそうで、Slackの絵文字も:emacs:Vimが出てきました。怖い世界。
JavaScripterの方が"みんなテストしよう"と熱く語っていたのが印象的でした。

競技開始

競技内容は非公開ですが、妨害コンテンツが流れまくりでした。
かなり楽しかったです。

競技終了・解説

頭痛と戦っていました。死ぬかと思った。
言われるとあああーって感じのものが難問かあって悔しかったです。

結果発表

実質一位でした(くやしい)。

懇親会

徳丸先生とツーショットとりました
社員の方とけっこういろいろとお話出来て良かったです。

まとめ

CTFっぽいけどCTFでは味わえない感覚でかなり楽しかったです。
実際のサービスをつっつけるというのは楽しいですね。
このイベントでえた知見は今後の開発に活かしていきたいです。