サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
円安とは
qiita.com/yubais
先日公開された vscode.dev を触った際、なんか Native File System API というのを使えばブラウザから普通にローカルファイルを扱えると知ったので、試しにブラウザで動くテキストエディタを作ってみた。 Chromium 系のブラウザ (Chrome, Edge など) だと大体動くけど Brave はだめ らしい。http サーバーを立てずに、ローカルの HTML ファイルとして開いても動く。 注意点としては、既存ファイルを上書き保存をすると作成日が保存した時点になってしまう。 <div id='filename'>名称未設定ファイル</div> <textarea id='editor'></textarea> <div> <button id='open'>開く</button> <button id='save'>上書き保存</button> <button
Chromebook を入手したのでちょっとしたテキストエディタを作る。ローカルのファイルを開いて、編集して、保存するだけの最小限のもの。こんな感じのやつ。Chrome 75.0 で作成。 GoogleChromeLabs が開発しているシンプルな text-app を参考にした。こちらはエディタ部分に CodeMirror を使っておりシンタックスハイライトが出来、また複数ファイルを同時に開く程度のことはできる。 https://github.com/GoogleChromeLabs/text-app まずマニフェストファイル。テキストエディタなのでファイルの書き込み許可が必要。 { "manifest_version": 2, "name": "MinimalEditor", "version": "0.1", "app": { "background" : { "scripts":
matplotlib とは python のグラフ描写モジュールであり、アニメーションも作れる。つまり深夜にアニメを見ないと死ぬ諸兄は matplotlib を覚えるというのも一案である。 というわけで極めて簡単なサンプルとして、numpy で生成した乱数を描写するだけのコードを書く。 公式ドキュメントはこちら。 http://matplotlib.org/api/animation_api.html ArtistAnimation matplotlib のアニメーションは ArtistAnimation と FuncAnimation の2種類がある。 ArtistAnimation は、あらかじめ全てのグラフを配列の形で用意しておき、それを1枚ずつ流すというものである。 import numpy as np import matplotlib.pyplot as plt import
先日 NASA が1977年に打ち上げられたボイジャー探査機のメンテナンスのために FORTRAN のエンジニアを募集しているという記事を見た。 http://www.theregister.co.uk/2015/10/31/brush_up_on_your_fortran/ 「FORTRAN が書ける人間がいるわけがない」「あれはIT業界のインダス文字だ」「NASA は暗に宇宙人に募集をかけてるのではないか」と思った人も多いと思うが、科学技術計算界隈ではわりと普通に FORTRAN が現役である。そこで本稿では FORTRAN を面白おかしく紹介しようと思う。 FORTRAN は歴史が長いだけあって様々なバージョンがあるが、FORTRAN 77 は アルファベットの小文字が使えない などの仕様があり、気の弱いエンジニアは見るだけで失神するだろう。本稿は全年齢対象という観点から、コードの視
必要に迫られて計算機クラスタを作ったのでその手順を解説します。 何を作ったのか うちの研究室では高性能なCPU/GPU を搭載したマシンを数台所有しており、使いたい人に配って個別管理してもらっていたのですが、このたび使いたい人が増加し、話し合って融通するのも面倒なので、ジョブ管理システムを備えたクラスタを構築することにしました。あくまで稼働率向上のためのクラスタ化なので、ノード間並列機能は備えておりません。 本記事は「ユーザーとしての Linux の操作にはひと通り慣れたけど、ネットワークの詳しい知識は持ってない」という人を対象に書いています。つまり僕くらいの人です。詳しい人から見ればところどころ勘違いがあると思いますがご了承願います。 環境 OS: Ubuntu Server 14.04 Network: Gigabit Ethernet ジョブ管理: Torque サーバー用途としては
NetworkX という Python 向けの素敵なグラフライブラリを知ったので、練習がてら「ランダムグラフの最大連結部分のサイズがどんくらいになるか」という実験をしてみた。 (ここでの「グラフ」とは数値データを可視化する図のことではなく、ネットワークグラフ的な意味でのグラフ) 問題設定 頂点 (node) がN個ある。 ランダムに2点を選んで辺 (edge) で結ぶ。これをS回繰り返す。 辺でつながった部分(連結部分)の最大サイズはいくらか。 この問題は S. Kauffman の著書「自己組織化と進化の論理」3章で紹介されたもので、多様な物質の混合物から生命が創発するモデルの一部として登場している。 コードと実行 ここでは networkx, numpy, matplotlib, および pydot をインスコしたものとする。インストール手順については最後に軽く触れる。 上記の問題に従
#!/bin/bash -e # ランダムな一時ファイル名を生成 filename=`cat /dev/urandom | LC_CTYPE=C tr -dc 'a-z0-9' | head -c 30` # 標準入力を一時ファイルに保存 cat > $filename # 引数がなければウィンドウにプロット if [ $# -eq 0 ] then gnuplot -p <<EOF set nokey plot '$filename' with line EOF # 引数があれば png に出力 else gnuplot <<EOF set nokey set terminal png set output '$1' plot '$filename' with line EOF fi rm $filename
「英単語の意味を調べようとブラウザ開いてぐぐったら2秒以上かかって、イライラしてPCを蹴ったらバタフライ効果で地球が消滅した」といった事態を未然に防ぐための記事。考え方によってはこの記事が地球を救ったとも言える。 「なんか apt-get で取れるいい感じの英和辞書があるだろう」と思ったけど意外にも見つからないので、それなら英単語とその意味だけがズラズラ載ってるテキストファイル無いかな、と思って探したらあった。 GENE95 辞書 デフォルトでは SHIFT-JIS なので UTF-8 にしておく。
以前書いた「Python で Twitter API にアクセス」だが、2014年3月頃に複数画像投稿が可能になり、それに伴って画像ツイートまわりの仕様が変更になったようなので追記。 それまでは通常ツイートの statuses/update API と、画像つきツイートの statuses/update_with_media があっだが、新たに media/upload というのが追加され、それまでの update_with_media は非推奨になった模様。 旧APIでは画像とテキストを同時に投稿していたが、新APIではまず画像をアップロードし、その media ID を取得してテキストをツイートする、という形になったようだ。 コードは大体こんなかんじ。CK,CS,AT,AS は適宜自分のキーに置き換えること。Python2, 3 どっちでも動く。 #!/usr/bin/env pyth
Python の線形回帰として以前まで scipy.stats.linregress を使っていたが、機能が少なくて使いづらいので statsmodels というのを導入してみた。まだ実質2時間しか使ってないので根本的に何か勘違いしているかもしれない。実質2時間しか使ってないからつれーわー 以下 statsmodels の OLS (ordinary least square; 普通の最小二乗法) の使い方について述べる。公式の資料はこちら http://statsmodels.sourceforge.net/stable/regression.html インストール pip でふつうに。
Python標準にも random というモジュールがあるが、ベクトル演算の可能な numpy のほうが「大量に乱数を生成してなんかの処理をする」という場合に高速に動く。あと分布関数が山ほど用意されている。 一様乱数 numpy.random.rand() で 0〜1 の一様乱数を生成する。引数を指定すれば複数の乱数を生成できる。乱数の範囲を変えたい場合は後からベクトル演算をすれば良い。 from numpy.random import * rand() # 0〜1の乱数を1個生成 rand(100) # 0〜1の乱数を100個生成 rand(10,10) # 0〜1の乱数で 10x10 の行列を生成 rand(100) * 40 + 30 # 30〜70の乱数を100個生成 from numpy.random import * """ 標準正規分布。いわゆるガウシアン。標準正規分布ならば
「キーボードのQWERTY配列は、タイプライター時代に、打鍵速度を落としてアームの衝突を防ぐために考案されたものである。高速タイピングには適さない」という逸話がある。 この話の真偽はさておき、キーボード配列のかなり多くの部分が「人類にとっての利便性」よりも「歴史的理由」が優先されている事は否定できないだろう。「自分にとっての利便性」ならば尚更だ。 僕は4年ほどMacを使っているが、その間にキーボードレイアウトに関してはかなりの変更が施されている。もはや常人が触ることは困難となっているため、セキュリティ面の向上も期待できる[要出典]。 というわけで以下、僕のMacのキーボード設定について幾つかのポイントを述べる。 前提 キーボードは MacBook Air の本体、JIS配列 OS は 10.9 Mavericks だが 10.7 Lion 時代から同じ設定で使ってる Ctrl と Comm
「Pythonの遅い部分をCで書き直すと実行速度が100倍になりました!(神奈川県・主婦・30代)」といった広告をよく週刊誌で見かける。しかし、型ゆとり世代にとってCはいささかハードルが高い。一方Python並列化ならば追加の手間はかなり少なくて済み、100倍とは言わないが数倍程度の高速化ができる。 並列化する計算 言うまでもないが、HTTP通信が律速になっているようなPythonでは並列化しても高速化されない。並列計算を要するのは大体、巨大なforループ計算である。例として以下のようなものを考える。 L = 20000 total = 0 for i in range(L): for j in range(L): total += i*j print (total) 手元のマシンでの実行時間は25.663秒。これを並列化によって高速化する。 Thread並列とProcess並列 並列化は
PythonからTwitter APIへのアクセス。Python2, 3両対応。 python-twitter というのもあるけど、基本はHTTP Requestを送ってJSONを得るだけなので、わざわざTwitter専用のライブラリを使うことも無いと思って自分で書いてみた。OAuth認証だけは別途ライブラリ使う。 OAuthのライブラリ Twitterへのアクセスには OAuth認証 というのが必要。 認証方式は非常にややこしいので、凡人はライブラリを使う。 今回は「人間のためのOAuth」をもって自認する Requests-OAuthlib を使う。他のライブラリがどんな生物を想定しているのかは知らない。 アプリケーション登録 Twitter APIにアクセスするにはまずアプリケーション登録が必要。これを済ませると Consumer Key Consumer Secret という2つの
このページを最初にブックマークしてみませんか?
『@yubaisのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く