PyCon JP 2020での発表スライドです。 --------------------------- (2020/08/30) 誤字を修正しました。 場所: p15 誤: assert_array_close() 正: assert_allclose() ---------------…
データサイエンス100本ノック(構造化データ加工編)のPythonの問題を解いていきます。この問題群は、模範解答ではpandasを使ってデータ加工を行っていますが、私達は勉強がてらにNumPyの構造化配列を用いて処理していきます。 次回記事(#2) はじめに Pythonでデータサイエンス的なことをする人の多くはpandas大好き人間かもしれませんが、実はpandasを使わなくても、NumPyで同じことができます。そしてNumPyの方がたいてい高速です。 pandas大好き人間だった僕もNumPyの操作には依然として慣れていないので、今回この『データサイエンス100本ノック』をNumPyで操作することでpandasからの卒業を試みて行きたいと思います。 今回は8問目までをやっていきます。 今回使うのはreceipt.csvだけみたいです。初期データは以下のようにして読み込みました(データ型
この記事は、Brainpad Advent Calender 15日目の記事です。 本記事では、メモリに乗らないようなデータもPandasやNumPyライクに操作を行い、スケールアップ・スケールアウトにも対応できるライブラリ、Daskについて、簡単に紹介をします。 はじめに Pythonでデータ分析や機械学習をする際、PandasやNumPyを用いる場面が非常に多くなってきました。 しかし、PandasやNumPyではメモリに乗らないデータの扱いが難しかったり、基本的にシングルコアでの処理を行うため、速度が遅い、といった問題があります。例えば、サーバー上で実行する際、CPUの論理コアが32個あっても、1個のCPUしか使用していない、といった感じです。 近年、データ分析関連のライブラリは非常に多様化しており、派閥(?)が沢山あるようです。 個人的には、Pandas作者であるWes McKin
こんにちは、ほけきよです。 pythonでデータを取り扱っているとき「あれ、これどうやるんだっけ??」 ってなること、ありませんか?僕は10分に1回程度なります。 いや、覚えろと自分でも思うんですが、覚えられないんですよね。100回くらい同じコマンドを調べてたりする。 物覚えが良くないので、ココを見れば絶対大丈夫なようにしておこうと思い、まとめてみました。 jupyterで最初に開くときに読み込むモジュールたち datetime 日付⇔文字列の変換 datetimeの足し算引き算 json dict型⇔json jsonファイルの入出力 datetimeをjsonにする時、エラーが出る pandas ~以外を表すやつ andとor inf弾く リストをdfにサクッと変換 datetimeとして読み込み 読み込み時にcodecのエラーが出る DataFrameのfor文 numpy lins
スノーボードを少しでも安く買いたかった そこで目を付けたのがヤフオクで開催されている1円スタートのスノボである 終了直前までの価格をみていると結構お得に買える!と、思っていた 少しの間、1円商品のスタートを見ていると入札されている価格帯が同じだということに気づいた だとすれば自分もその価格帯付近で入札すれば買えるんじゃないかと思い、価格帯を調べることにした 最近スクレイピングではPythonを使う NodeJSだと非同期を少しでも考えるのが嫌なので、できるだけ使いたくない 実行環境はColaboratoryを用いた スクレイピングして表形式で出力したいだけだからだ 簡単にPythonの実行環境にできるのでスゴイおすすめである colab.research.google.com スクレイピングには定番のBeautiful Soupを使って集計するコードを書き始め、できた結果が下記のようなコー
この辺の続きです。 white-azalea.hatenablog.jp 4月の勉強会の開催状況と、事前申し込みの状況を眺めてみたが正解。 勉強会情報を拾ってくる 前回の流れですが、2サイト以上でやるので、少しだけ汎用化を考えてみた。 調べてみたら、ATND と COMPASS のAPI仕様がほぼ同一だった。 まずは共通の定義を用意して import requests import sys class ClassRoom: def __init__(self, title, limit, accepted, waiting): def or_zero(v): if isinstance(v, int): return v return 0 self.title = title self.limit = or_zero(limit) self.joins = or_zero(accepted
環境 Python 3.6.4 jupyter notebook 4.4.0 windows 10 スクレイピング 東洋経済ONLINEのサイトでAmazonのビジネス書売り上げランキングが 毎週1位~200位まで発表されているので 今回はそれをスクレイピングで自動収集していきます toyokeizai.net 本のタイトルの取得と同時に順位に応じてポイントをつけていきます データについて import pandas as pd import urllib.request from bs4 import BeautifulSoup import json import time import numpy as np #スクレイピングしてタイトルとポイントをjson形式で出力 #リンク一覧ページからランキングサイトのリンクを取得 link_list=[] for i in range(1,1
さて、前回のブログで足立区の賃貸物件を取得しました。 www.analyze-world.com 同様にして、東京都23区の物件も取得してしまいましょう。今回僕が取得したところ、合計で200,060件になりました。csvファイルで70MBほどですので、Excelだと重すぎて処理スピートがかなり遅いです。いい感じにビッグなデータが手に入ったんじゃないでしょうか。 物件情報を取得したはいいものの、このままだと分析をまわせないので、前処理を施します。今回の最終目標はお買い得物件を探すことなので、応答変数は賃料が主な指標になりそうです。賃料に対して、それぞれのカラムがどのように効いてくるかを考慮しながら処理していきます。 今回使うライブラリはpandasとnumpyだけです。それぞれ区別に保存しておいたファイルを結合して一つのファイルを形成します。 #必要なライブラリをインポート import p
はじめに 先日のエントリで少し記載した Dask について、その使い方を書く。Dask を使うと、NumPy や pandas の API を利用して並列計算/分散処理を行うことができる。また、Dask は Out-Of-Core (データ量が多くメモリに乗らない場合) の処理も考慮した実装になっている。 sinhrks.hatenablog.com 上にも書いたが、Daskは NumPy や pandas を置き換えるものではない。数値計算のためのバックエンドとして NumPy や pandas を利用するため、むしろこれらのパッケージが必須である。 Dask は NumPy や pandas の API を完全にはサポートしていないため、並列 / Out-Of-Core 処理が必要な場面では Dask を、他では NumPy / pandas を使うのがよいと思う。pandasとDas
最近仕事で自然言語処理を使ったモデルを作成していたんですが、 前処理やモデルを作る際に数分〜数十分単位の処理待ちの空き時間が頻繁に発生してしまい、 その度集中力が切れる問題に悩まされていました。 モデルの学習に時間がかかってしまうのはまた別の解決策を考えるとして、 今回は時間のかかる前処理をDaskをつかって高速化した方法をお話ししようと思います。 この記事は PyLadies Advent Calendar 2018 - Adventar の18日目の記事になります。 Daskとは? Daskとは、numpyやpandasなどのデータを簡単に並列計算するライブラリ。 あまり公式のチュートリアルがわかりやすくない(気がする)ので、基本的な使い方は Python Dask で 並列 DataFrame 処理 - StatsFragments を見てみると良い。 サンプルデータ 今回はKagg
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? # !/usr/bin/env python # -*- coding: utf-8 -*- # インポート import numpy as np import scipy as py import pandas as pd import itertools as it ''' 作成 ''' # リスト作成 list_value = [10,11,12] list_value Out[374]: [10, 11, 12] # タプル作成 tuple_value = (10,11,12) tuple_value Out[375]: (10
この記事について 今までなんとなくで使用していたpandasですが、なんとなくで実装していたコード(日経平均予想のやつです)が汚くメンテナンスが難しくなってきたので、一度ちゃんとpandasでのデータの扱い方をまとめておこうと思って書いたものです。 pandasの公式ドキュメントに Intro to Data Structures というものがあり、基本的にはそこで説明されていることの一部をピックアップして紹介している記事になります。 http://pandas.pydata.org/pandas-docs/stable/dsintro.html 目次 この記事について 目次 Series: 1次元のデータ Seriesの作り方 Seriesはnumpyのndarrayに似ている SeriesはPythonの辞書に似ている ベクトル的な計算もできます Name属性 DataFrame: 2
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く