Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
StartupStockPhotosによるPixabayからの画像 こんにちは。倉内です。 プログラミング問題には、計算問題だけでなく配列や文字列を操作したり、図形から法則を見つけたりといろいろなものがあります。その中でも「関数を定義して処理を書くのは苦手だな…」と感じている方は多いのではないでしょうか。 私もまさにそのひとりで、基本は学んだものの使いこなせていません…。そこで今回は、さまざまな問題を集めた「レベルアップ問題集」の中から再帰関数を使って解く問題に挑戦しようと思います! 今回はスマートな解き方や綺麗なコードを書くというよりは、プログラミング初心者でもこういう方針を立てて、こう考えてみたら解けるかもということを重視して解いていきます。 プログラミング学習を始めたばかりの初心者の方もぜひ参考にしてみてください。 レベルアップ問題集「山折り谷折り」をPythonで解く paizaで
特殊メソッドとは Pythonのクラスでは「特殊メソッド」と呼ばれるメソッドを定義(オーバーライド)できる。特殊メソッドとは、各種の演算子や組み込み関数などの操作の対象として、独自のクラスを利用できるようにするための仕組みだと考えられる。つまり、クラスを自分で定義しているときに、適切な名前の特殊メソッドを適切にオーバーライドすることで、例えば、次のような処理が可能になる。
Pythonは一番書きやすいプログラミング言語と知られ、多くの人の第二外国語(英語に次ぎ)です。でもGithubやGitlabで他人のコードを参照した時や自分でclassを書いてる時、こういう疑問はあったでしょうか: 「def __init__(self): の__init__のアンダースコアは何故二つなのか?」 「def _func(x): と def func(x): とdef func_(x): に違いはあるのか?」 「y, _ = func(x)のアンダースコアは何か?」 そんな色んな所で使われてるアンダースコアの使い方を、今回整理して説明してみました! アンダースコアの使い場所Return値を無視する。関数の名付けで使い方を区別する。数字を読みやすくする。インタプリタで最後に表示された値を代表する。以上4種類の状況でアンダースコアを使いこなす事により、読みやすいpythonicな
こんにちは!虎の穴ラボのNSSです。 虎の穴ラボではオライリー・ジャパン社の定期購読サービスを利用しており、 毎月新刊をいち早く読めるようになっています。 今回は12/24に刊行された「Pythonによるファイナンス(第2版)」を読んだ感想を共有したいと思います。 www.oreilly.co.jp 読もうと思ったきっかけ 数年前から少しだけ投資をしていたので、タイトルから興味を惹かれました。 Pythonを使って自分の投資ポートフォリオを評価したり、自動取引ができたら楽しそうだと思いました。 目次 目次 日本語版まえがき まえがき 第1部 Pythonとファイナンス 1章 なぜファイナンスにPythonを使うのか 1.1 プログラミング言語Python 1.1.1 Pythonの大まかな歴史 1.1.2 Pythonエコシステム 1.1.3 Pythonのユーザ層 1.1.4 科学スタ
Pythonでシステム構成図を書ける、DiagramsというOSSが便利そうだったので試してみました。 Diagrams · Diagram as Code 対応プロバイダ 現在、Diagramsは以下の7種類のプロバイダに対応しています。各プロバイダが提供している各種サービスがノードとして対応されています。以下は対応プロバイダとそのノード一覧へのリンクです。 AWS Azure GCP Alibaba Cloud Oracle Cloud Kubernetes オンプレミス オンプレミスプロバイダには、GitHubやCircleCIといったサービス、汎用的なクライアント、各種DBなど幅広い種類のノードが含まれています。このアイコンないかなと思った場合は、オンプレミスプロバイダを調べてみるともしかしたらあるかもしれません。 試してみる AWS上のシステム構成図を書いてみて各機能を試していき
2019年9月16、17日、日本最大のPythonの祭典である「PyCon JP 2019」が開催されました。「Python New Era」をキャッチコピーに、日本だけでなく世界各地からPythonエンジニアたちが一堂に会し、さまざまな知見を共有します。プレゼンテーション「Python_Webフレームワーク比較」に登壇したのは、CMSコミュニケーションズ代表取締役の寺田学氏。講演資料はこちら フルスタックなオールインワンのWebフレームワークDjango寺田学氏(以下、寺田):「Webフレームワークの紹介」に移ります。Django、Flask、Pyramid、Zope、Tornado、aiohttp、Guillotina、Bottle、responderの9種類の紹介をしていきます。 まず、Djangoの説明です。Djangoの公式サイトはここ(https://www.djangopro
2019年9月16、17日、日本最大のPythonの祭典である「PyCon JP 2019」が開催されました。「Python New Era」をキャッチコピーに、日本だけでなく世界各地からPythonエンジニアたちが一堂に会し、さまざまな知見を共有します。プレゼンテーション「Python_Webフレームワーク比較」に登壇したのは、CMSコミュニケーションズ代表取締役の寺田学氏。講演資料はこちら PythonのWebフレームワークについて寺田学氏(以下、寺田):それでは「Python Webフレームワーク比較」ということで、45分間のトークをしていきたいと思います。 資料は基本的に英語ですが、大事なところは日本語で書いています。もともと英語で発表したいという想いがあったんですけど、日本語で伝えたほうがいいなと思ったので、今日は日本語です。 私は寺田学といいます。CMSコミュニケーションズとい
はじめに 自分は元々pandasが苦手でKaggleコンペ参加時は基本的にBigQuery上のSQLで特徴量を作り、最低限のpandas操作でデータ処理をしていました。 しかし、あるコードコンペティションに参加することになり、pythonで軽快にデータ処理をこなす必要が出てきたので勉強しました。 そこで、当時の勉強メモをもとに「これだけ知っていればKaggleでそこそこ戦えるかな」と思っているpandasの主要機能をまとめました。 注記 実戦入門 のつもりが ほぼ辞書 になってしまいました orz pandasとはなんぞや的な内容は書いていません (import pandasやDataFrameとは何かなど) pandas1.0系でも動くように書いたつもりですが間違ってたらすみません 目次 はじめに 注記 目次 Options DaraFrame 読み書き CSVファイル 読み込み 書き出
教師なし学習はラベル付けされていないデータから学習する機械学習の一種です。現在の機械学習では大量のラベル付きのデータを用いる教師あり学習が主流ですが、ラベルを付けるには膨大なコストがかかります。現実世界に機械学習を適用していくためには、ラベル付けを必要としない教師なし学習の重要性が増してくると考えられます。本書は実践的な視点から、データにある隠れたパターンを特定し、異常検出や特徴量抽出・選択を行う方法を紹介します。ラベルなしデータを有効に利用することで、機械学習の可能性を各段に広げる教師なし学習の本質に迫ります。さらに、変分オートエンコーダ(VAE)や敵対的生成ネットワーク(GAN)、制限付きボルツマンマシン(RBM)などの生成モデルも紹介します。 正誤表 書籍発行後に気づいた誤植や更新された情報を掲載しています。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ペー
一般的に、時系列データを扱うタスクでは過去のデータを使って未来のデータを予測することになる。 そのため、交差検証するときも過去のデータを使ってモデルを学習させた上で未来のデータを使って検証しなければいけない。 もし、未来のデータがモデルの学習データに混入すると、本来は利用できないデータにもとづいた楽観的な予測が得られてしまう。 今回は、そんな時系列データの交差検証と scikit-learn の TimeSeriesSplit の改良について書いてみる。 使った環境は次のとおり。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.14.6 BuildVersion: 18G3020 $ python -V Python 3.8.1 下準備 あらかじめ、必要なパッケージをインストールしておく。 $ pip install scikit-le
Pythonで作って学ぶ統計モデリング 近年、AIや機械学習、深層学習といった用語に代表されるように、多種多様のデータを高度なアルゴリズムと計算機の力で解析し、将来予測などの価値を生み出す技術に注目が集まっています。 これらの技術の土台となっているのが、本記事で解説する統計モデリング(statistical modeling) と呼ばれる考え方です。元々は手計算が可能なレベルの比較的シンプルな数学的仮定を置いてデータを解析する方法論として発展しましたが、近年の計算機の性能発達に伴い、従来では取り扱えなかったより複雑なモデルを利用した高度な解析を実施する事例が増えてきています。特に、現在実践で広く使われている機械学習のモデルや、複雑な非線形関数を組み合わせた深層学習モデルなども、その多くは突き詰めれば統計モデルの一種であることが言えます。したがって、統計モデリングはそれ自体がデータ解析に対し
こんにちは。谷口です。 先日paizaが実施したアンケートで、「好きなプログラミング言語」の1位にPythonがランクインしました。 paiza.hatenablog.com Pythonは 比較的短くシンプルな構文の言語なので、コードを読みやすく書きやすい そのため初心者でも勉強しやすい 機能的な標準ライブラリや外部のライブラリが多い などといった特徴があり、近年非常に人気の高いプログラミング言語です。 特に計算処理やデータ解析、画像処理などの分野で使えるライブラリが多いため、機械学習の分野でよく使われています。また、DjangoなどのWebアプリケーションフレームワークも人気があり、Web開発の現場で使われる場面も増えていますね。 今回は、プログラミングの勉強を始めたばかりの初心者の方向けに、Pythonを使ってプログラミング問題をたくさん解ける問題集のような学習コンテンツをご紹介しま
自然言語処理で遊ぶための学習用データとして魅力的なWikipediaのデータですが、ダウンロード可能なDumpデータは3GB程度と容量が大きく、形式はXMLデータだったりと扱うのが大変です。もしDBに格納されていれば条件検索して記事数など確認しながら必要なデータだけ取り出すことができて便利です。今回はファイルとして持ち運びにも便利なSQLiteでWikipediaの記事DBを作成します。 目的 ・Wikipediaの記事データをDB(SQLite)に格納する ・記事名でパターン検索して、タイトルに特定の文字を含む記事データを抽出してみる。 方法(概要) ・Wikipadiaのダンプデータをダウンロードする ・Wikiextractorでテキストを整形しつつjsonデータとして抽出する ・抽出したjsonデータを拙作のPythonスクリプトwikiextractor2sqlite(※)を用い
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く